asp.net/C# 执行存储过程技术要点,获取Return返回值,解决“存储过程总返回-1”的问题
1、执行存储过程
SqlConnection conn = new SqlConnection();//建立连接
conn.ConnectionString = Config.ConnStr;//连接字符串
conn.Open();//打开连接
SqlCommand cmd = new SqlCommand();//创建命令
cmd.Connection = conn;//指定连接
cmd.CommandText = "PRO_AAA";//存储过程名称
cmd.CommandType = CommandType.StoredProcedure;//指定命令的类型是存储过程
cmd.ExecuteNonQuery();//执行
conn.Close();//关闭连接
2、无返回
同上
3、获得返回结果:
指定一个参数,这个参数的方向(“Direction”)是“ReturnValue”。
MyCommand.Parameters.Add(new SqlParameter("@return", SqlDbType.Int));
MyCommand.Parameters["@return"].Direction = ParameterDirection.ReturnValue;
MyCommand.ExecuteNonQuery();
Response.Write(MyCommand.Parameters["@return"].Value.ToString());
4、获得返回的表:
用SqlDataAdapter 执行Command,然后填充到表。
SqlCommand cmd = new SqlCommand("proc_3", con);//同上
cmd.CommandType = CommandType.StoredProcedure;//同上
SqlDataAdapter da = new SqlDataAdapter(cmd);//用SqlDataAdapter执行
DataTable table = new DataTable();//创建一张表
da.Fill(table);//填充表
return table;
参考:
【按:我是为了获得“Return返回值”搜索到第2和第3篇文章的,但是他们都没有找到解决办法,用的是OUTPUR输出。只有第一个是真正的解决办法。】
C#获取存储过程的 Return返回值和Output输出参数值
http://www.2cto.com/kf/201007/52892.html
ASP.NET调用存储过程并接收存储过程返回值
http://duanxifeng123.blog.163.com/blog/static/11542723201072112617414/?fromdm&fromSearch&isFromSearchEngine=yes
为什么存储过程总返回-1 取存储过程的值 取数据集
http://liu.wf.blog.163.com/blog/static/237887452009102335512300/
漂泊是无尽的轮回。