トリガーを作成するインストール・スクリプトの編集

ソース表にBEFORE INSERTトリガーがあるアプリケーションで、ソース表から関連付けられた新規表にデータを挿入する場合、インストール・スクリプトの各INSERT文によって新規表へのデータの挿入の前に、トリガーを起動するかどうか決定する必要があります。

たとえば、NEW_EVALUATION_TRIGGER (「チュートリアル: 行を挿入する前に行に対して主キーを生成するトリガーの作成」で作成した)は、行がEVALUATIONS表に挿入される前に起動します。トリガーは、EVALUATIONS_SEQUENCEを使用して、その行の主キーに対する一意の番号を生成します。

ソースEVALUATIONS表には、主キーが移入されています。インストール・スクリプトを新規EVALUATIONS表の新規主キーしない場合、インストール・スクリプトのCREATE TRIGGER文を次のように編集する必要があります。

CREATE OR REPLACE
TRIGGER NEW_EVALUATION_TRIGGER
BEFORE INSERT ON EVALUATIONS
FOR EACH ROW
BEGIN
  IF :NEW.evaluation_id IS NULL THEN
    :NEW.evaluation_id := evaluations_sequence.NEXTVAL
  END IF;
END;

また、順序の現在の値が主キー列の最大値より大きくない場合、大きくする必要があります。

インストール・スクリプトは、ワークシートまたはテキスト・エディタのいずれかで編集できます。

次のステップは、インストール・スクリプトの編集に2つの方法があります。

関連項目: 「トリガーの作成」