在sql语句后使用 SCOPE_IDENTITY() 当然您也可以使用 SELECT @@IDENTITY 但是使用 SELECT @@IDENTITY是去全局最新. 有可能取得值不正确. 示例: 获取SQL-SERVER数据库insert into操作的主键返回值,SCOPE_IDENTITY 插入一条记录后想要立刻获取其数据表中的主键返回值。这个主键是自动生成的,其实实现的方式有很多,比如再进行一次查询,获取出来。或者在插入数据之前取 出最大值,在最大值上面加一等等,方法很多,但是有些很不方便。 个人感觉最快的方式就是,在插入数据后直接获取主键的值,然后返回过来。 方法如下: sql语句如下: INSERT INTO tableName (fieldname ...) values (value ...) SELECT @@IDENTITY AS returnName; 在sql语句中加入SELECT @@IDENTITY AS returnName;用来获取主键的值 在程序中 获取返回值: 当然在此处主键是int类型的自动增加的。DBopen();DBclose();的操作在此就 不多说了。 select SCOPE_IDENTITY() 返回上面操作的数据表最后row的IDENTITY 列的值; 返回插入到同一作用域中的 IDENTITY 列内的最后一个 IDENTITY 值。一个作用域就是一个模块——存储过程、触发器、函数或批处理。因此,如果两个语句处于同一个存储过程、函数或批处理中,则它们位于相同的作用域中。 SELECT @@IDENTITY 返回上面操作最后一个数据表的最后row的IDENTITY 列的值; 创建表: create table T_User(F_ID int identity(1,1) not null,F_Name varchar() not null) 插入数据: insert into T_User(F_Name) values('我是谁') Select SCOPE_IDENTITY() 存储过程: CREATE PROCEDURE [dbo].[sp_User](@F_Name int) AS begin tran Insertinto_T_User Insert into dbo.T_User(F_Name) values(@F_Name) Select SCOPE_IDENTITY()
推荐整理分享sql语句返回主键SCOPE_IDENTITY()(sql返回一条数据),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:sqlserver返回结果集,sql返回上一步快捷键,sql语句返回主键是什么,sql语句返回主键是什么,sql语句返回主键是什么,sqlyog怎么返回上一步,sql语句的返回值,sql语句的返回值,内容如对您有帮助,希望把文章链接给更多的朋友!
MSSQL中递归SQL查询语句实例说明- 一张表(ColumnTable)的结构如下图所示当前需要实现的功能:通过Number的值为来获取当前的节点ID、父节点ID递归实现SQL语句:withznieyuas(selectc.Id,c.FatherI
根据表名和索引获取需要的列名的存储过程 createprocp_sword_getblcolumn(@tblNamevarchar(),@fromIndexint,@toIndexint,@columnNamevarchar()output)asbegindeclare@tempColumnvarchar()declare@errMsgvarchar()declare@iintset@i=1set@colum
SQL点滴 监测表的变化 有时候,我们在某一重要的时间段需要监控某张表的变化情况,包含插入、更新、删除。举例来说,当我们把数据导出到外部的系统时,我们希望导出