powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Уничтожение триггера из другого триггера
9 сообщений из 9, страница 1 из 1
Уничтожение триггера из другого триггера
    #32000309
Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как сделать сабж?
Ни Drop trigger, ни Alter table внутри триггера не работает.
...
Рейтинг: 0 / 0
Уничтожение триггера из другого триггера
    #32000310
Ольга
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Subj действительно не сделать никак. :( А какая задачка? Может, @@nestlevel спасет?
...
Рейтинг: 0 / 0
Уничтожение триггера из другого триггера
    #32000312
Dmitri V. Jigatch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Триггер - механизм поддержания целостности данных, разрабатывающийся при проектировании базы данных. С какого перепугу один триггер должен уничтожать второй?
...
Рейтинг: 0 / 0
Уничтожение триггера из другого триггера
    #32000318
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Товорисчь вирусы на SQL писать хочет, а вы его так разочаровали :)
...
Рейтинг: 0 / 0
Уничтожение триггера из другого триггера
    #32000328
Фотография AnS1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так в чем проблема - непонятно?
Если очень хочется, то можно создать COM объектик в процедуре - DMO ошный.
Ну и простор для творчества.
...
Рейтинг: 0 / 0
Уничтожение триггера из другого триггера
    #32000352
Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно вести лог (таблицу) изменений в некоторой базе.
Есть таблица, в ней храняться некоторые настройки аудита и на ней висит триггер.
При изменении этих самых настроек нужно изменять триггер на другой таблице (к которой эти самые настройки относятся), например писать в лог дополнительную информацию о некотором поле.

Иногда необходимость вести аудит некоторой таблицы отпадает и тогда нужно убить триггер на ней. Вот тут-то проблема и возникает...

2Ольга Как мне может помочь @@nestlevel?
2AnS1 Поясни свой вариант, plz
...
Рейтинг: 0 / 0
Уничтожение триггера из другого триггера
    #32000354
Ольга
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В такой задаче @@nestlevel действительно не поможет.
А почему нельзя в самом триггере на таблицу, в которой проводятся изменения, проверять таблицу аудита и, в зависимости от результатов проверки, записывать в лог или делать что-то еще?
...
Рейтинг: 0 / 0
Уничтожение триггера из другого триггера
    #32000355
Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Потому, что в этом случае триггер на этой таблице будет большим и тормозным, а нужна быстрота работы системы.
...
Рейтинг: 0 / 0
Уничтожение триггера из другого триггера
    #32000357
Фотография AnS1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вряд ли мой вариант тебя устроит - создание COM объектов посредством sp_OACreate и иже с ней -
требует значительных ресурсов.
В принципе, можно создать объект SQLDMO.Table для требуемой таблицы
а затем использовать .Triggers.Remove, .Triggers.Add и .Triggers("[имя триггера]").Text

но в этом случае - производительность ниже, чем у предложенного Ольгой варианта.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Уничтожение триггера из другого триггера
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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