SQL включает Усеченный

Как Запустить триггер, когда Вы действительно УСЕКАЕТЕ (вместо этого удаленный) в MSSQL

14
задан David Hall 10 February 2010 в 03:37
поделиться

3 ответа

From msdn:

TRUNCATE TABLE не может активировать триггер, потому что операция не регистрирует удаление отдельных строк.

21
ответ дан 1 December 2019 в 07:27
поделиться

Вы не можете сделать это на SQL-сервере.

Из MSDN

TRUNCATE TABLE не может активировать триггер, потому что операция не может активировать триггер. триггер, потому что эта операция не регистрирует удаление отдельных строк. Для получения дополнительной информацию см. в разделе CREATE TRIGGER (Transact-SQL).

9
ответ дан 1 December 2019 в 07:27
поделиться

Позволяете ли вы пользователям запускать TRUNCATE TABLE ad hoc / willy nilly? Если нет, то вместо того, чтобы беспокоиться об использовании триггера, почему бы не обернуть команду TRUNCATE в хранимую процедуру, которая также занимается тем, что триггер сделал бы после завершения усечения? (Но делать это, конечно, придется в обратном порядке)

.
6
ответ дан 1 December 2019 в 07:27
поделиться