刪除表1,其他表自動刪除
alter trigger Trigger_Complaint
on Complaints_1
for delete
as
Begin
declare @TMP varchar(50),
@i numeric(38,0),
@table varchar(50),
@SQL varchar(max),
@VGUID uniqueidentifier
set @TMP='Complaints_'
set @i=2
select @vGUID=VGUID from deleted
while 1=1
Begin
set @table=@TMP+convert(varchar(10),@i)
if OBJECT_ID(@table,'U') is not null
Begin
set @SQL='delete from ['+@table+'] where VGUID = '+''''+convert(varchar(50),@VGUID)+''''
exec(@SQL)
set @i=@i+1
End Else
Break;
end
End
on Complaints_1
for delete
as
Begin
declare @TMP varchar(50),
@i numeric(38,0),
@table varchar(50),
@SQL varchar(max),
@VGUID uniqueidentifier
set @TMP='Complaints_'
set @i=2
select @vGUID=VGUID from deleted
while 1=1
Begin
set @table=@TMP+convert(varchar(10),@i)
if OBJECT_ID(@table,'U') is not null
Begin
set @SQL='delete from ['+@table+'] where VGUID = '+''''+convert(varchar(50),@VGUID)+''''
exec(@SQL)
set @i=@i+1
End Else
Break;
end
End
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.