create procedure sys.sp_MSdroplightweighttriggers
@artid uniqueidentifier
as
set nocount on
declare @procname nvarchar(517)
declare @owner sysname
declare @command nvarchar(4000)
declare @postfix nchar(32)
declare @retcode int
exec @retcode= sys.sp_MSguidtostr @artid, @postfix out
if @@error <> 0 or @retcode <> 0 return 1
select @owner= destination_owner from dbo.sysmergearticles where artid=@artid
set @owner= isnull(@owner, 'dbo')
-- remove the insert trigger
set @procname= 'MSmerge_upd_lws_' + @postfix
set @procname= quotename(@owner) + '.' + quotename(@procname)
if object_id(@procname, 'TR') is not null
begin
select @command= 'drop trigger ' + @procname
exec(@command)
if @@error <> 0 return 1
end
-- remove the delete trigger
set @procname= 'MSmerge_ins_lws_' + @postfix
set @procname= quotename(@owner) + '.' + quotename(@procname)
if object_id(@procname, 'TR') is not null
begin
select @command= 'drop trigger ' + @procname
exec(@command)
if @@error <> 0 return 1
end
-- remove the delete trigger
set @procname= 'MSmerge_del_lws_' + @postfix
set @procname= quotename(@owner) + '.' + quotename(@procname)
if object_id(@procname, 'TR') is not null
begin
select @command= 'drop trigger ' + @procname
exec(@command)
if @@error <> 0 return 1
end
-- remove the download-only trigger
set @procname= 'MSmerge_downloadonly_' + @postfix
set @procname= quotename(@owner) + '.' + quotename(@procname)
if object_id(@procname, 'TR') is not null
begin
select @command= 'drop trigger ' + @procname
exec(@command)
if @@error <> 0 return 1
end
return 0