日期:2014-05-18  浏览次数:20463 次

@@identity的用法
我在存储过程中插入一条记录时(有可能,同时有很多人也在插入数据),然后返回这条记录的自动编号
我用@@identity返回,不知道返回的是不是我当前插入的这条?
如果不是,那怎样做才是安全的呢?
请教各位!!!

------解决方案--------------------
这样呢
SELECT MAX(ID) FROM 。。。



------解决方案--------------------
mark
------解决方案--------------------
create table myRes(
resID int identity(1,1),
code varchar(20),
name varchar(100))

insert into myRes(code,name)values( "1021 ", "my goods ")
select @@Identity
------解决方案--------------------
insert后直接写select @@ide..取的就是你插入行的ID
------解决方案--------------------
是,你在插入数据的时候SQL自己会维护1个锁,保证你在插入数据的时候别人不会同时插入.
------解决方案--------------------
在添加的时候,lock,添加完,获取@@identity后,unlock
------解决方案--------------------
用 SCOPE_IDENTITY