2014-12-22 1 views
0

У нас есть небольшая странная проблема в SQL Server. Одна из наших таблиц пуста во время ETL. Мы уверены, что таблица загружена, но проблема в том, что после этого таблица опустела. Каждый день мы загружаем несколько таблиц (по ETL). Но в нашем процессе есть TRUNCATE TABLE statemement, и мы не знаем, где. Я бы хотел указать хотя бы время выполнения этого запроса TRUNCATE TABLE. А затем сравните его с историей работы агента. Чтобы узнать, какая работа выполняется.SQL Server - Как я могу получить журнал TRUNCATE TABLE для конкретной таблицы?

Заранее спасибо.

+1

Усечение отсутствует в трассировке по умолчанию. Вам нужно либо включить аудит (только Enterprise), либо создать триггер ddl в таблице. –

+0

Можете ли вы найти ключевое слово truncate в своем проекте? –

+0

Мы сделали это, и мы ничего не нашли :( – user3640552

ответ

0

Truncate не запускает триггеры dml или ddl. Поэтому триггеры таблицы/базы данных в этом случае не помогут.

Вы можете либо запустить процесс Profiler, чтобы поймать команды «truncate table» во время процессов ETL.

«Более грязный» вариант заключается в создании вида привязки схемы по таблице, что приведет к сбою truncate, и вы увидите, какой процесс был выполнен.

Смежные вопросы