IDENTITY_INSERT в триггере - PullRequest
       3

IDENTITY_INSERT в триггере

2 голосов
/ 15 января 2010

Можно ли включить его в триггере таблицы?

Я попытался создать триггер с SET IDENTITY_INSERT tableName ON

Но когда я открываю определение триггера, я вижу, что оператора там нет ...

Это мой запрос на изменение триггера для добавления IDENTITY_INSERT, когда я открываю определение, IDENTITY_INSERT удаляется ...

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET IDENTITY_INSERT dbo.MyTable ON
GO

ALTER TRIGGER [dbo].[MyTrigger]
ON [dbo].[MyTable]
AFTER INSERT AS



INSERT INTO MyOtherTable
(   
    // values
)


SET IDENTITY_INSERT dbo.MyTable OFF

1 Ответ

2 голосов
/ 15 января 2010

Чтобы включить и выключить его в триггере, ваш SET IDENTITY_INSERT ON должен быть здесь:

ПОСЛЕ ВСТАВКИ AS

SET IDENTITY_INSERT dbo.MyTable ON

ВСТАВИТЬ В MyOtherTable

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...