次の方法で共有


トリガー (Visual Database Tools)

Visual Database Tools は、DML トリガーをサポートしています。 DML トリガーは、データベース内でデータ操作言語 (DML: Data Manipulation Language) イベントが発生したときに呼び出されます。 DML イベントには、指定されたテーブルまたはビュー内のデータを変更する INSERT、UPDATE、または DELETE ステートメントが含まれます。 DML トリガーでは、他のテーブルに対するクエリや、複雑な Transact-SQL ステートメントを指定できます。 トリガーとトリガーを発生させるステートメントは 1 つのトランザクションとして扱われ、トリガー内からロールバックできます。 重大なエラーが検出された場合 (ディスク容量の不足など) は、トランザクション全体が自動的にロールバックされます。

関連項目

DML トリガーには、次の利点があります。

  • データベース内の関連テーブル間で連鎖変更を行うことができます。ただし、この変更を行うには、連鎖参照整合性制約を使用する方が効率的です。

  • 悪質または不正な INSERT、UPDATE、および DELETE 操作を防ぎ、CHECK 制約で定義されているよりも複雑なその他の制限も適用します。

  • CHECK 制約とは異なり、DML トリガーでは他のテーブルの列を参照できます。 たとえば、別のテーブルの SELECT を使用して、挿入または更新されたデータと比較し、データの変更やユーザー定義のエラー メッセージの表示などの追加の処理を実行できます。

  • データ変更の前後でテーブルの状態を評価して、その違いに基づいて処理を実行できます。

  • 1 つのテーブルに同じタイプ (INSERT、UPDATE、または DELETE) の DML トリガーが存在すると、1 つの変更ステートメントへの応答で、複数の異なる処理を実行できます。

参照

その他の技術情報

トリガーの使用

テーブル デザイナーでのテーブルの操作

制約の使用