トリガーの作成

スキーマにデータベース・トリガーを作成する場合に使用します。このダイアログにより、スケルトンのTRIGGER SQL文が作成されます。

トリガーの所有者
トリガーを所有するスキーマを選択します。

注意: 選択したスキーマに対して十分な権限を持っていない場合は、トリガーを作成できません。

トリガー名
トリガーの名前を入力します。
トリガーのタイプ

ドロップダウン・リストからトリガーのタイプを選択します。選択したタイプにより、次の追加パラメータが必要です。

表トリガー・パラメータ

自分のスキーマ内の表に対するトリガーを自分のスキーマ内に作成するには、CREATE TRIGGER権限が必要です。任意のスキーマ内の表に対するトリガーを任意のスキーマ内に作成するには、CREATE ANY TRIGGER権限が必要です。

表の所有者
表を所有しているスキーマを選択します。
表名
表を選択します。
BEFOREオプション
トリガー・イベントを実行する前にトリガーを起動する場合に選択します。「行レベル」を選択すると、影響を受ける各行が変更される前に、トリガーが起動されます。
AFTERオプション
トリガー・イベントを実行した後にトリガーを起動する場合に選択します。
「行レベル」を選択すると、影響を受ける各行が変更された後に、トリガーが起動されます。
文レベル
文トリガーを指定する場合に選択します。文トリガーは、各行に対してではなく、表全体に対して1回起動します。
行レベル
行トリガーを指定する場合に選択します。「When句」条件で指定した各行に対して、トリガーが起動します。

トリガーを保存するには、次のいずれかのオプションを選択する必要があります。

挿入
INSERT文により行が表に追加されたときにトリガーを起動する場合に選択します。
削除
DELETE文により行が表から削除されたときにトリガーを起動する場合に選択します。
更新
UPDATE文により表の選択した列の値が変更されたときにトリガーを起動する場合に選択します。
参照
相関名を指定するために、次のいずれかまたは両方のパラメータを指定します。行トリガーの「When句」条件で相関名を使用して、現在の行の古い値および新しい値を参照できます。デフォルトの相関名は、OLDおよびNEWです。行トリガーがOLDまたはNEWという表と関連付けられている場合は、これらのフィールドを使用して異なる相関名を指定してください。
トリガー・イベント前の表の状態に対する相関名を入力します。
新規
トリガー・イベント後の表の状態に対する相関名を入力します。
更新時にトリガーが起動される列を選択します。このパラメータは、「更新」を選択した場合にのみ有効になります。
When句
トリガー制限を入力します。トリガー制限とは、トリガーが起動するために満たす必要があるSQL条件式です。この条件には、相関名を含む必要がありますが、問合せは含めることができません。

ビュー・トリガー・パラメータ

ビューの所有者
ビューを所有しているスキーマを選択します。
ビュー名
ビューを選択します。

トリガーを保存するには、次のいずれかのオプションを選択する必要があります。

挿入
INSERT文により行がビューに追加されたときにトリガーを起動する場合に選択します。
削除
DELETE文により行がビューから削除されたときにトリガーを起動する場合に選択します。
更新
UPDATE文によりビューの選択した列の値が変更されたときにトリガーを起動する場合に選択します。
参照
相関名を指定するために、次のいずれかまたは両方のパラメータを指定します。行トリガーの「When句」条件で相関名を使用して、現在の行の古い値および新しい値を参照できます。デフォルトの相関名は、OLDおよびNEWです。トリガーがOLDまたはNEWという表と関連付けられている場合は、これらのフィールドを使用して異なる相関名を指定してください。
トリガー・イベント前のビューの状態に対する相関名を入力します。
新規
トリガー・イベント後のビューの状態に対する相関名を入力します。

スキーマ・トリガー・パラメータ

BEFOREオプション
トリガー・イベントを実行する前にトリガーを起動する場合に選択します。
AFTERオプション
トリガー・イベントを実行した後にトリガーを起動する場合に選択します。
スキーマ
トリガーを作成するスキーマの名前を入力します。
イベント
トリガーを起動させる1つ以上のDDLまたはデータベース・イベントを指定します。少なくとも1つのイベントを選択するまで、トリガーを保存できません。

データベース・トリガー・パラメータ

データベースにトリガーを作成するには、ADMINISTER DATABASE TRIGGERシステム権限が必要です。

BEFOREオプション
トリガー・イベントを実行する前にトリガーを起動する場合に選択します。
AFTERオプション
トリガー・イベントを実行した後にトリガーを起動する場合に選択します。
イベント
トリガーを起動させる1つ以上のDDLまたはデータベース・イベントを指定します。少なくとも1つのイベントを選択するまで、トリガーを保存できません。

トリガー・パラメータとオプションの詳細は、『Oracle Database SQLリファレンス』のトリガーの作成の項を参照してください。


PL/SQLトリガーの作成

 

Copyright © 1997, 2004, Oracle. All rights reserved.