DROP EVENT NOTIFICATION (Transact-SQL)
現在のデータベースからイベント通知トリガを削除します。
構文
DROP EVENT NOTIFICATION notification_name [ ,...n ]
ON { SERVER | DATABASE | QUEUE queue_name }
[ ; ]
引数
- notification_name
削除するイベント通知の名前を指定します。複数のイベント通知を指定できます。現在作成されているイベント通知の一覧を表示するには、「sys.event_notifications (Transact-SQL)」を参照してください。
- SERVER
イベント通知のスコープが現在のサーバーに適用されることを示します。イベント通知の作成時に SERVER を指定した場合は、SERVER を指定する必要があります。
- DATABASE
イベント通知のスコープが現在のデータベースに適用されることを示します。イベント通知の作成時に DATABASE を指定した場合は、DATABASE を指定する必要があります。
- QUEUE queue_name
イベント通知のスコープが、queue_name で指定されたキューに適用されることを示します。イベント通知の作成時に QUEUE を指定した場合は、QUEUE を指定する必要があります。同様に、キューの名前である queue_name も指定する必要があります。
解説
イベント通知がトランザクションの中で発生し、同じトランザクションの中で削除された場合は、イベント通知のインスタンスが送信され、その後でイベント通知が削除されます。
権限
データベース レベルのスコープを持つイベント通知を削除するには、少なくとも、イベント通知の所有者であるか、現在のデータベースに対する ALTER ANY DATABASE EVENT NOTIFICATION 権限を持っている必要があります。
サーバー レベルのスコープを持つイベント通知を削除するには、少なくとも、イベント通知の所有者であるか、そのサーバーに対する ALTER ANY EVENT NOTIFICATION 権限を持っている必要があります。
特定のキューのイベント通知を削除するには、少なくとも、イベント通知の所有者であるか、親キューに対する ALTER 権限を持っている必要があります。
例
次の例では、データベース スコープのイベント通知を作成し、削除します。
USE AdventureWorks;
GO
CREATE EVENT NOTIFICATION NotifyALTER_T1
ON DATABASE
FOR ALTER_TABLE
TO SERVICE 'NotifyService',
'8140a771-3c4b-4479-8ac0-81008ab17984';
GO
DROP EVENT NOTIFICATION NotifyALTER_T1
ON DATABASE;
参照
関連項目
CREATE EVENT NOTIFICATION (Transact-SQL)
EVENTDATA (Transact-SQL)
sys.event_notifications (Transact-SQL)
sys.events (Transact-SQL)