Есть ли DDL-аудит в SQL Server 2000?

И если нет, есть ли способ узнать, когда триггер был отключен / включен?

СЛЕДОВАТЬ ЗА:

Это довольно интересный диагностический случай. Я был вовлечен только с периферии, и парень, который занимается диагностикой, не работает с базой данных.

В любом случае, у него был триггер, который перемещал данные из одной таблицы в другую. Он сделал сравнение, и не все данные дошли до второй таблицы. Я сказал, что я критик SQL Server, но я верю, что их триггеры срабатывают в одной транзакции. Он сказал, но некоторые данные сделали это... если это было просто отключено, ничто не должно сделать это. Правда. Поэтому я сказал, что, возможно, кто-то включает и отключает триггеры. Отсюда и вопрос.

Но на самом деле произошло то, что кто-то навсегда отключил триггер и скопировал код в sproc, который был запущен в определенное время.

Правильный криминалистический тест состоял бы в том, чтобы посмотреть на зависимости второй таблицы, посмотреть, что еще использовало ее. Это показало бы рост опухоли... (Я мог наблюдать много повторов Хауса, могу ли я сказать).

2 ответа

Решение

Ваша проблема очень похожа на ту, о которой Рэнди Волтерс писал в Simple-Talk

http://www.simple-talk.com/sql/database-administration/dml-trigger-status-alerts/

Я подозреваю, что это поможет

Никакого аудита, хотя есть компания под названием Lumigent, которая предлагает продукт "База данных аудита", который будет выполнять аудит DDL (среди прочего) для SQL Server.

Вы можете посмотреть в таблице sysobjects информацию о crdate, которая сообщит вам, когда был создан объект.

Другие вопросы по тегам