一带输出参数存储过程的完整操作
来源:互联网 发布:比价软件怎么用 编辑:程序博客网 时间:2024/06/05 08:46
一. 创建存储过程:
-- =============================================
-- 添加书籍种类
-- =============================================
ALTER PROCEDURE [dbo].[AddBookType]
@Type_Name varchar(50),
@Type_FatherTypeID int,
@IsAdd int output
AS
BEGIN
if(exists(select Type_Name from BookCategory where Type_Name=@Type_Name and Type_FatherTypeID=@Type_FatherTypeID))
begin
set @IsAdd = 1
end
else
begin
insert into BookCategory(Type_Name,Type_FatherTypeID) values(@Type_Name,@Type_FatherTypeID)
set @IsAdd = 0
end
END
二. 数据访问层的操作:
/// <summary>
/// 添加书籍种类名称
/// </summary>
/// <param name="bookType">数据类别</param>
/// <param name="result">输出参数,判断要添加的书籍类别是否存在</param>
/// <returns></returns>
public DataSet Add(Model.BookCategory bookType, out int result)
{
try
{
SqlParameter[] parameters = new SqlParameter[] {
new SqlParameter("@Type_Name",SqlDbType.VarChar,50),
new SqlParameter("@Type_FatherTypeID",SqlDbType.Int),
new SqlParameter("@IsAdd",SqlDbType.Int)
};
parameters[0].Value = bookType.Type_Name;
parameters[1].Value = bookType.Type_FatherTypeID;
parameters[2].Direction = ParameterDirection.Output; //注意输出参数的写法:没有Value值,而是赋予Direction属性。
DataSet ds = DbHelperSQL.RunProcedure("AddBookType", parameters, "BookCategory");
result = Convert.ToInt32(parameters[2].Value);
return ds;
}
catch (System.Data.SqlClient.SqlException ee)
{
result = 1;
throw new Exception(ee.Message);
}
}
三. 表现层的后台代码实现:
protected void btn_Add_Click(object sender, EventArgs e)
{
Model.BookCategory bookcategory = new Model.BookCategory();
bookcategory.Type_Name = this.txt_TypeName.Text.Trim();
int fatherID = Convert.ToInt32(this.DropDownList1.SelectedValue);
bookcategory.Type_FatherTypeID = fatherID;
int result = 1;
BLL.BookCategory bookType = new BLL.BookCategory();
DataSet ds = bookType.AddBookCategory(bookcategory, out result);
if (result == 1)
{
Page.ClientScript.RegisterStartupScript(this.btn_Add.GetType(), "key1", "alert('该书籍种类已存在,请重新输入!')", true);
}
else
{
this.BindDropDList();
Page.ClientScript.RegisterStartupScript(this.btn_Add.GetType(), "key1", "alert(''添加成功!')", true);
}
}
- 一带输出参数存储过程的完整操作
- 存储过程输出参数
- 存储过程-输出参数
- 演示存储过程的输出参数
- 存储过程参数的输入与输出
- mssql使用输出参数的存储过程
- 调用带输出参数的存储过程
- 带输出参数的存储过程调用
- 一种存储过程输出参数的用法
- 执行带输出参数的存储过程
- 带有输出参数的存储过程
- 带输出参数的存储过程
- 执行带有输出参数的存储过程
- 设置存储过程的输出参数
- 执行有输出参数的存储过程
- 带有输出参数的存储过程
- 使用带有输出参数的存储过程
- 调用带输出参数的存储过程
- Orx 1.2版本前瞻 附带iarwain对SFML以及SDL的评价
- 前台调用WebServices的方法
- 求高手指点下。。。O(∩_∩)O~
- 首页自动更换图片(类似flash)
- 书籍父类别和子类别的显示
- 一带输出参数存储过程的完整操作
- 访问Access2007的封装类DbAccess
- 连接access2007和2003的字符串
- ASP.NET调用存储过程返回值 输入输出参数
- 存储过程嵌套事物
- 订单号的生成方法
- 服务器更新
- Response.Buffer = True
- 执子 全