2016-05-10 10 views
0

SQL Server 2008:Enrollの列が削除されたときに、列の値をStudentに変更するトリガーを作成しようとしています。削除後に別のテーブルを更新するトリガー

私はドキュメントに従おうとしてきましたが、それは私の頭の上に行くつもりです。

ありがとうございます。

CREATE TRIGGER Student_Drops 
ON Enroll 
AFTER DELETE 
AS 
    SET NOCOUNT ON; 

    UPDATE Student 
    SET Student.Credits = Student.Credits - 3 
    WHERE Student.stuID = deleted.stuID 

答えて

0

クエリは1つの行に対してのみ有効です。複数の行を同時に削除できますか?もしそうなら、次のようなものを試してみてください:

UPDATE s 
SET s.Credits = s.Credits-3 
FROM Student s JOIN deleted d ON s.stuID = d.stuID 
+0

問題は私のオリジナルの質問が受け入れられていないことです。私の「削除済み」の使用は好きではありません。 'deleted'を宣言する特別な方法はありますか? – CeePlusPlus

関連する問題