Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Triggers / 3 сообщений из 3, страница 1 из 1
06.06.2002, 17:42:31
    #32031958
eugene
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Triggers
Таким образом я могу ВКЛЮЧАТЬ/ВЫКЛЮЧАТЬ триггер:

ALTER TABLE table_name DISABLE TRIGGER trigger_name

А можно ли как-нибудь узнать включен или выключен триггер в данный момент ???????
...
Рейтинг: 0 / 0
08.06.2002, 03:50:20
    #32032158
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Triggers
Есть подозрение, что 12-й бит поля status таблицы sysobjects отвечает за
состояние триггера (если объект триггер, разумеется). Можно попробовать
этот код:

declare @TriggerName sysname
SET @TriggerName = 'MyTrigger'
SELECT CASE (status & 2048) WHEN 2048 THEN 'DISABLED' ELSE 'ENABLED' END
FROM sysobjects
WHERE id = OBJECT_ID(@TriggerName) AND xtype = 'TR'


Надеюсь, Вы понимаете, что это все недокументированно, поэтому можно
использовать весьма ограниченно...


Удачи
...
Рейтинг: 0 / 0
08.06.2002, 11:13:41
    #32032159
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Triggers
use pubs
go
if exists (select * from dbo.sysobjects where id = object_id(N'[testtable]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [testtable]
GO

create table testtable(f1 int)
go
create trigger ti_test on testtable for insert
as
print 'trigger'
go

select OBJECTPROPERTY(object_id('ti_test'), N'ExecIsTriggerDisabled')
go
alter table testtable disable trigger ti_test
go
select OBJECTPROPERTY(object_id('ti_test'), N'ExecIsTriggerDisabled')
go
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Triggers / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]