私は特定のテーブルのDDLトリガーを作成しようとしていると、これは私が思い付くことが最高です:特定のテーブルのDDLトリガーを作成するには?
CREATE TRIGGER MyTrigger
ON DATABASE
FOR DDL_TABLE_EVENTS
AS
DECLARE @EventData xml
SET @EventData=EVENTDATA()
IF @EventData.value('(/EVENT_INSTANCE/ObjectType)[1]', 'varchar(50)')='TABLE'
AND @EventData.value('(/EVENT_INSTANCE/ObjectName)[1]', 'varchar(50)') ='MyTable'
BEGIN
--do something special here!!
END
GO
が、これは実際にそれを行うための唯一の方法ですか?どこにでも見えましたが、特定のテーブルにトリガーを作成する構文が見つかりませんでした。私は、xml EVENTDATA()を使用することが本当にばかげていると思います。