2010-12-03 11 views

答えて

2

あなたはINSTEAD OF DELETEトリガーでこのような状況に対処する必要があります。

のような何か:

CREATE TRIGGER tr_IOD_YourTable ON YourTable 
INSTEAD OF DELETE 
AS 
BEGIN 
    SET NOCOUNT ON 

    UPDATE yt 
     SET ChildForeignKey = NULL 
     FROM deleted d 
      INNER JOIN YourTable yt 
       ON d.PrimaryKeyColumn = yt.ChildForeignKey 

    DELETE FROM yt 
     FROM deleted d 
      INNER JOIN YourTable yt 
       ON d.PrimaryKeyColumn = yt.PrimaryKeyColumn 
END