0

私はトリガーが初めてです。SQL Server 2014 を使用してトリガーを作成しようとしています。これが私のコードです

CREATE TRIGGER deleteTrigger
ON student
FOR DELETE
AS
DELETE FROM [stu-course] 
where [stu-course].sid in ( select deleted.sid  from deleted )
GO

パス myDataBase ->Programmability ->Database Triggers の Database Triggers を右クリックし、New Database Trigger を選択して、そこにコードを記述します。しかし、それは保存されません。データベーストリガーをもう一度クリックしても、トリガーの兆候はありません。私は何をすべきか?

4

1 に答える 1

0

フォルダーの下に見つからない理由は、これがデータベース トリガーではなくdatabase triggersDML トリガーであるためです(これらは DDL トリガーのみです)。

CREATE TRIGGERMSDN のページに注意してください。

サーバー スコープの DDL トリガーは、トリガー フォルダーの SQL Server Management Studio オブジェクト エクスプローラーに表示されます。このフォルダは、Server Objects フォルダの下にあります。データベース スコープの DDL トリガーは、データベース トリガー フォルダーに表示されます。このフォルダーは、対応するデータベースの Programmability フォルダーの下にあります。

create trigger スクリプトを実行してエラーが発生しなかった場合 (構文は問題ないように見えます)、studentテーブルのトリガー フォルダーの下にあるはずです。

ただし、このトリガーを使用して実行しようとしている操作は、テーブルとテーブルの間on delete cascade外部キー制約を使用することでより適切に処理されます。studentsstu-course

于 2015-06-14T14:49:35.007 に答える