首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求这个怪异有关问题的解释,高人进来看看

2012-03-11 
求这个怪异问题的解释,高人进来看看有表LastID表中有字段 LastID(int) Tbname(varchar)我有一个函数去执行

求这个怪异问题的解释,高人进来看看

有表LastID  
表中有字段 LastID(int) Tbname(varchar)

我有一个函数去执行这一个语句.

Update LastID Set LastID=LastID+1 Where Tbname='WorkGroup' ;Select LastID From LastID WITH (TABLOCKX) Where Tbname='WorkGroup'

按理说,每执行一次LastID都会加1

但是,居然重复了.概率非常小,两年了,出现了一次.



[解决办法]
并发了?
[解决办法]
Update LastID Set LastID=LastID+1 Where Tbname='WorkGroup'
重复是什么意思?貌似你这个是'WorkGroup'的全部+1的。
[解决办法]
每次都+1,你是如何看出来重复的呢?
[解决办法]
declare @lastid int 
Update LastID Set LastID=LastID+1 , @lastid = LastID+1 Where Tbname='WorkGroup' ;
select @lastid ;

我想这样应当可行
[解决办法]
加个UNIQUE不就可以了?
[解决办法]
update要加个排它锁吧。
[解决办法]


[解决办法]

热点排行