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/
漂泊是无尽的轮回。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了