スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド(UNIX(R)用)

[目次][索引][前へ][次へ]

13.5 トリガの定義

トリガを定義すると,ある表への操作(更新,挿入,及び削除)を契機に自動的にSQL文を実行させることができます。トリガは,定義する表,トリガを動作させる契機となるSQL(トリガ契機となるSQL),自動的に実行させるSQL文(トリガSQL文),その動作が実行される条件(トリガ動作の探索条件)などを指定して定義します。トリガを定義した表にトリガ動作の探索条件を満たすSQL文が実行されると,トリガSQL文が自動的に実行されます。トリガの概要を次の図に示します。

図13-17 トリガの概要

[図データ]

〔説明〕
UAPからトリガ契機となるSQLが実行されると,トリガを定義した表Aでトリガが呼び出され,トリガ動作の探索条件を満たしている場合,自動的にトリガSQL文(この場合,表Bへの行の挿入や表Cへの行の更新)が実行されます。

前提条件
トリガを定義する場合,データディクショナリLOB用RDエリアを作成しておく必要があります。データディクショナリLOB用RDエリアは,データベース構成変更ユティリティ(pdmod)で作成します。

なお,トリガを表に定義すると,その表を使用する関数,手続き及びトリガのSQLオブジェクトは無効になるため,SQLオブジェクトを再作成する必要があります。また,トリガが使用しているリソース(表,インデクスなど)が定義,定義変更,又は削除された場合,トリガのSQLオブジェクトは無効になるため,SQLオブジェクトを再作成する必要があります。詳細は「13.5.4 トリガの管理」を参照してください。

<この節の構成>
13.5.1 適用基準
13.5.2 トリガの定義
13.5.3 トリガの使用上の注意
13.5.4 トリガの管理
13.5.5 障害時の回復方法