Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Прописать во всех триггерах NOT FOR REPLICATION  [new]
Andrey Sobolev
Member

Откуда: Москва
Сообщений: 416
Подскажите срочно!!

Как можно проставить Not For Replication на все триггеры ??
Есть конструкция Alter, но я не знаю как ее построить.



WBR
Andrey V. Sobolev
s_andrey@mail333.com
9 дек 03, 12:23    [452709]     Ответить | Цитировать Сообщить модератору
 Re: Прописать во всех триггерах NOT FOR REPLICATION  [new]
МуМу
Member

Откуда:
Сообщений: 1134
declare @str char(8000)
declare @dropstr char(8000)
declare @trigger_name char(100)

declare Mylog cursor local fast_forward for
select rtrim(c.text),rtrim(o.name) from dbo.syscomments c, dbo.sysobjects o
where o.id = c.id
and o.name like '%sp_MSsync_upd_trig_%'
order by c.number, c.colid
open Mylog
fetch Mylog into @str,@trigger_name
while (@@fetch_status<>-1)
begin

set @dropstr='drop trigger '+rtrim(@trigger_name)
set @str=rtrim(replace(@str,' declare @rc int',' declare @rc int set nocount on'))
set @str=rtrim(@str)+'set nocount off'
select @str
exec(@dropstr)
exec(@str)
fetch Mylog into @str,@trigger_name
end
close Mylog
deallocate Mylog

Посмотри код тут у меня вставляется в текст триггера 'set nocount off' и 'set nocount on'

Только учти перед тем как дропать убедись что они у тебя еще где нибудь храняться на всякий случай...
9 дек 03, 13:36    [452958]     Ответить | Цитировать Сообщить модератору
 Re: Прописать во всех триггерах NOT FOR REPLICATION  [new]
Andrey Sobolev
Member

Откуда: Москва
Сообщений: 416
Спасибо!
Но проверять уже скорее всего не буду - я по другому сделал.

WBR
Andrey V. Sobolev
s_andrey@mail333.com
9 дек 03, 14:03    [453057]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить