C#.net中三层结构中怎样调用存储过程
2011-12-11 18:33
295 查看
下面的CmdObj.是定义的SqlCommand对象
1、获得存储过程中return语句返回的整个存储过程函数的返回值:
//获得存储过程return的值,定义一个参数,指明其作用是接受return的值
CmdObj.Parameters.Add("RETURN_VALUE",SqlDbType.Int).Direction=ParameterDirection.ReturnValue;
通过获取该参数的方式最终获得return返回的值
intreValue=int.Parse(CmdObj.Parameters["RETURN_VALUE"].Value.ToString());
2、获得存储过程输出参数的值:
定义sql的参数,指定类型是输出
CmdObj.Parameters.Add("@outValue",SqlDbType.VarChar).Direction=ParameterDirection.Output;
获得输出参数的值
stringoutValue=CmdObj.Parameters["@outValue"].Value.ToString();
总结,关键地方就是指明参数的Direction属性,使用ParameterDirection来指定,可以指定4种类型,
输入,
输出,
既是输入又是输出,
接受returns
1、获得存储过程中return语句返回的整个存储过程函数的返回值:
//获得存储过程return的值,定义一个参数,指明其作用是接受return的值
CmdObj.Parameters.Add("RETURN_VALUE",SqlDbType.Int).Direction=ParameterDirection.ReturnValue;
通过获取该参数的方式最终获得return返回的值
intreValue=int.Parse(CmdObj.Parameters["RETURN_VALUE"].Value.ToString());
2、获得存储过程输出参数的值:
定义sql的参数,指定类型是输出
CmdObj.Parameters.Add("@outValue",SqlDbType.VarChar).Direction=ParameterDirection.Output;
获得输出参数的值
stringoutValue=CmdObj.Parameters["@outValue"].Value.ToString();
总结,关键地方就是指明参数的Direction属性,使用ParameterDirection来指定,可以指定4种类型,
输入,
输出,
既是输入又是输出,
接受returns
(1)执行一个没有参数的存储过程的代码如下:
SqlConnectionconn=newSqlConnection(“connectionString”);
SqlDataAdapterda=newSqlDataAdapter();
da.selectCommand=newSqlCommand();
da.selectCommand.Connection=conn;
da.selectCommand.CommandText="NameOfProcedure";
da.selectCommand.CommandType=CommandType.StoredProcedure;
(2)执行一个有参数的存储过程的代码如下
SqlConnectionconn=newSqlConnection(“connectionString”);
SqlDataAdapterda=newSqlDataAdapter();
da.selectCommand=newSqlCommand();
da.selectCommand.Connection=conn;
da.selectCommand.CommandText="NameOfProcedure";
da.selectCommand.CommandType=CommandType.StoredProcedure;
param=newSqlParameter("@ParameterName",SqlDbType.DateTime);
param.Direction=ParameterDirection.Input;
param.Value=Convert.ToDateTime(inputdate);
da.selectCommand.Parameters.Add(param);
若需要添加输出参数:
param=newSqlParameter("@ParameterName",SqlDbType.DateTime);
param.Direction=ParameterDirection.Output;
param.Value=Convert.ToDateTime(inputdate);
da.selectCommand.Parameters.Add(param);
若要获得参储过程的返回值:
param=newSqlParameter("@ParameterName",SqlDbType.DateTime);
param.Direction=ParameterDirection.ReturnValue;
param.Value=Convert.ToDateTime(inputdate);
da.selectCommand.Parameters.Add(param);
相关文章推荐
- 在C#.NET中怎样调用db2存储过程
- EXTASPNET C# ASP.NET sql server 调用存储过程超时,解决方法
- asp.net中怎样调用存储过程和存储过程的写法
- sql 存储过程 几个 简单例子,及在asp.net(C#)中调用存储过程的代码
- C# asp.net调用Sqlserver 存储过程
- EXTASPNET C# ASP.NET sql server 调用存储过程超时,解决方法
- 调用存储过程方法 (asp.net C#)
- asp.net中怎样调用存储过程和存储过程的写法
- c# .net 调用oracle存储过程学习例子
- 如何使用 ADO.NET 和 Visual C# .NET 调用带参数的存储过程
- asp.net中怎样调用存储过程和存储过程的写法
- asp.net中怎样调用存储过程和存储过程的写法
- asp.net中怎样调用存储过程和存储过程的写法
- asp.net中怎样调用存储过程和存储过程的写法(转载,留着自己看)
- 在ASP.NET(C#)中调用周销售记录存储过程
- HOW TO:使用 ADO.NET 和 Visual C# .NET 调用带参数的存储过程
- 如何使用 ADO.NET 和 Visual C# .NET 调用带参数的存储过程
- MSSQL根据表名动态分页的存储过程以及C#.net调用使用
- [ASP.NET] C# 调用存储过程
- c#.net调用存储过程