1

SQL Server 2000 では、既定で、DELETE クエリによってテーブルの UPDATE トリガーが実行されますか?

DELETE と UPDATE の両方で実行されるトリガーを定義できることはわかっていますが、これが実際に必要であることを最初に確認することにしました。

4

2 に答える 2

9

DELETE は UPDATE トリガーを起動しません。DELETE と UPDATE で起動するように定義されたトリガーがある場合、DELETE で実行されますが、これは DELETE トリガーでもあるためです。

于 2009-01-21T15:35:58.230 に答える
3

これをトリガーにダンプして、自分で確認してください

IF @@ROWCOUNT > 0 
BEGIN 
    IF EXISTS (SELECT 1 FROM inserted) 
    BEGIN 
        IF EXISTS (SELECT 1 FROM deleted) 
            PRINT 'update'; 
        ELSE 
            PRINT 'insert'; 
    END 
    ELSE 
        PRINT 'delete'; 
END 
于 2009-01-21T15:30:38.710 に答える