表Table_T,主键MainID为int自增,有一字段Test。要在存储过程中取得新插入记录的字段Test值,并将其输出。
获得新记录某字段有两种方法:
1、所需字段为非标识字段
declare @returnValue [nvarchar](50) --向表中插入一行数据 insert into Table_T(Test) values ('Test') --获取新插入数据行MainID set @returnValue =(select top 1 Test from Table_T order by MainID desc) --将MainID输出 select @returnValue Output
2、所需字段为标识字段,使用select IDENT_CURRENT(“表名”)
declare @returnValue [nvarchar](50) --向表中插入一行数据 insert into Table_T(Test) values ('Test') --获取新插入数据行MainID set @returnValue =(select IDENT_CURRENT('Table_T')) --将MainID输出 select @returnValue Output
由接收OUTPUT返回值:
cmd.Parameters.Add("@ReturnValue",SqlDbType.NVarChar,50); cmd.Parameters["@ReturnValue"].Direction = ParameterDirection.Output; cmd.ExecuteNonQuery(); string returnValue = cmd.Parameters["@ReturnValue"].Value.ToString();
分享链接,获得存储过程中的返回值大总结:
http://www.cnblogs.com/souso/archive/2009/09/09/1563104.html