我的事务是这个样子: BEGIN TRAN declare @max_id int update max_id set @max_id=id=id+1 select * from max_id insert into T_XMJBXX(XMBM,XMMC,CDDW,XMLB,CDDW_ID,ZZJGDM,DWXZ,XMZT) values(@max_id,'ddfeee','sdww','A','1000000754','401360920','AA','5') COMMIT TRAN 请问该怎么加锁,涉及到了两个表
你是不是要取表max_id里最大的id,然后再+1放到表T_XMJBXX里??
如果是,该这样写吧: BEGIN TRAN declare @max_id int select @max_id=max(id) from max_id with (xlock,paglock) insert into T_XMJBXX(XMBM,XMMC,CDDW,XMLB,CDDW_ID,ZZJGDM,DWXZ,XMZT) values(@max_id,'ddfeee','sdww','A','1000000754','401360920','AA','5') COMMIT TRAN
select * from [table] with(xlock,paglock) where ..
....
commit tran
http://www.leadbbs.com/a/a.asp?B=230&ID=2451856&E=1&EID=33
BEGIN TRAN
declare @max_id int update max_id set @max_id=id=id+1 select * from max_id
insert into T_XMJBXX(XMBM,XMMC,CDDW,XMLB,CDDW_ID,ZZJGDM,DWXZ,XMZT) values(@max_id,'ddfeee','sdww','A','1000000754','401360920','AA','5')
COMMIT TRAN
请问该怎么加锁,涉及到了两个表
你是不是要取表max_id里最大的id,然后再+1放到表T_XMJBXX里??
BEGIN TRAN
declare @max_id int
select @max_id=max(id) from max_id with (xlock,paglock)
insert into T_XMJBXX(XMBM,XMMC,CDDW,XMLB,CDDW_ID,ZZJGDM,DWXZ,XMZT) values(@max_id,'ddfeee','sdww','A','1000000754','401360920','AA','5')
COMMIT TRAN