SQL Server 2005返回刚刚插入的数据条目id值
点击次数:26 次 发布日期:2008-11-22 13:31:19 作者:源代码网
|
有些时候我们需要得到刚刚插入数据库中的条目id,用于相关系统的更改,在以前我是使用select+top 1+desc 这种笨方法实现的,在没有并发的时候,还说的过去,但用户一多的话,这种方法就不行了,当然,你也可以考虑加锁的办法,但是对性能损耗太大, 无意发现SQL Server 2005 的全新output子句,利用它,我们可以很轻松的得到刚刚插入的id号。 具体示例如下: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --创建一个临时表 CREATE TABLE [soloreztest]( [id] [int] IDENTITY(1,1) NOT NULL, [name] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL, ) ON [PRIMARY] Go --插入数据,并返回刚刚插入的数据id INSERT INTO [soloreztest] ([name]) output inserted.id VALUES ("solorez") --执行结果: --id ------------- --5 (1 行受影响) --查看所有信息 select * from [soloreztest] --执行结果: --id name ------------- -------------------------------------------------- --1 solorez --2 solorez --3 solorez --4 solorez --5 solorez -- --(5 行受影响) 源代码网供稿. |
