如何获取存储过程中的反回值?
来源:互联网 发布:linux apache ab下载 编辑:程序博客网 时间:2024/06/04 01:30
有下面这样一个存储过程:
CREATE PROCEDURE dbo.InsertST
@name nvarchar(32)
AS
Insert ST (name)
SELECT @NAME
--返回主键值
RETURN @@IDENTITY
现在想在程序中,获取这个存储过程的返回值,来得到当前插入记录的主键,该如何做?
对于想获取当前插入记录的主键的方法无外呼两种情况,1.把生成的主键值作为存储过程的一个输出参数,这个很容易,2. 把生成的主键作为存储过程的反回值,现在的情况属于第二种。
在c#的中,当我们要给存储过程传递参数的时候,默认的输入参数,如果要指定输出参数,则必须设置ParameterDirection参数,而该参数有四种情况:
ParameterDirection.Input; 输入参数
ParameterDirection.InputOutput; 输入输出参数
ParameterDirection.Output; 输出参数
ParameterDirection.ReturnValue; 返回值
我们知道了如何通过输出参数或者主键,到这而应该知道了如何通过返回值获取主键值了吧,与输入参数不同的就是在这里设置参数的值为ReturnValue.
..........
SqlCommand cmd = new SqlCommand();
cmd.Connection = db.m_sqlConn;
cmd.CommandText = "[DeleteUseridByID]";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@userid", SqlDbType.Int, 0));
SqlParameter rtnval = cmd.Parameters.Add("rval",SqlDbType.Int,0);
rtnval.Direction = ParameterDirection.ReturnValue;
cmd.Connection = db.m_sqlConn;
cmd.CommandText = "[DeleteUseridByID]";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@userid", SqlDbType.Int, 0));
SqlParameter rtnval = cmd.Parameters.Add("rval",SqlDbType.Int,0);
rtnval.Direction = ParameterDirection.ReturnValue;
cmd.Parameters[0].Value = 10;
int nRes = cmd.ExecuteNonQuery();
int rrr = int.Parse(rtnval.Value.ToString());
..................
- 如何获取存储过程中的反回值?
- Entity Framework如何获取存储过程中的output参数
- 如何 获取SQL Server中的存储过程参数列表
- 获取SqlProfiler中的存储过程
- Python如何执行存储过程,获取存储过程返回值
- 如何获取存储过程或触发器等中的print的字符串
- 如何加密Oracle中的存储过程
- 如何加密Oracle中的存储过程
- 如何加密Oracle中的存储过程
- 如何迁移RDS中的加密存储过程
- delphi如何调用sql存储过程,并获取结果
- C#中如何获取存储过程的输出参数值
- 如何获取使用某个table的所有存储过程
- SQLHelper 如何获取存储过程返回的值
- C#中如何获取存储过程的输出参数值
- C#中如何获取存储过程的输出参数值
- cx_Oracle如何获取存储过程的返回值
- 获取MSSQL表中的主键(存储过程)
- 一些有用的SQL语句
- F.E.A.R. 编译备忘
- FuncDropColumn(为表删除某字段)
- C#让windows程序只运行一次
- javascript常用代码
- 如何获取存储过程中的反回值?
- FuncADDColumn(为表添加字段)
- 令AxosoftPowerTrack支持中文
- 基于IA架构高性能集群系统技术
- 清除冗余记录的SQL语句
- sql学习
- 调试程序里的NullPointerException
- 数据库设计中的14个关键技巧
- RelationAlgebra