6,129
社区成员
发帖
与我相关
我的任务
分享
begin tran
update David01
set A='aa'
where B='b2'
waitfor delay '00:00:5'
update David02
set D='d5'
where E='e1'
--In the second connection
begin tran
update David02
set D='d5'
where E='e1'
waitfor delay '00:00:3'
update David01
set A='aa'
where B='b2'
declare @sp nvarchar(100),@sql nvarchar(1000)
set @sp = (Select spid from master..sysprocesses where blocked > 0)
set @sql = 'kill '+@sp
exec(@sql)
create table #(spid varchar(20),dbid varchar(10),objid varchar(20),indid varchar(10),type varchar(20),
resource varchar(20),mode varchar(10),status varchar(20))
insert into # exec sp_lock
select distinct identity(int,1,1) as id, spid into #2 from # where mode in ('ix','x') and spid<>@@spid
declare @i int set @i=1
declare @spid int
while @i<=(select max(id) from #2)
begin
select @spid=spid from #2 where id=@i
exec('kill ' + @spid)
set @i= @i+1
end
drop table #,#2
create table David01(
A varchar(2)
,B varchar(2)
,C varchar(2))
--insert data
insert into David01
select 'a1','b1','c1'
union all select 'a2','b2','c2'
union all select 'a3','b3','c3'
--create table David02
create table David02
(D varchar(2)
,E varchar(2))
----insert data
insert into David02
select 'd1','e1'
union all select 'd2','e2'