Event Trigger Dialog¶
イベントトリガー ダイアログを使用して、イベントトリガーを定義します。単一のテーブルにアタッチされ、DMLイベントのみをキャプチャする通常のトリガーとは異なり、イベントトリガーは特定のデータベースに対してグローバルであり、DDLイベントをキャプチャできます。通常のトリガーと同様に、イベントトリガーは、イベントトリガーのサポートを含む手続き型言語またはCで作成できますが、SQL作成できません。
イベントトリガー ダイアログは、次のダイアログタブを介してイベントトリガーの開発を整理します: 一般 、 定義 、および セキュリティラベル 。 SQL タブには、ダイアログ選択によって生成されたSQLコードが表示されます。
[ 全般 ]タブのフィールドを使用して、イベントトリガーを識別します。
Name フィールドを使用して、イベントトリガーの説明的な名前を追加します。名前は pgAdmin ツリーコントロールに表示されます。
所有者 の横にあるドロップダウンリストボックスを使用して、イベントトリガーの所有者を指定します。
イベントトリガーに関するメモを コメント フィールドに保存します。
[ 定義 ]タブをクリックして続行します。
[ 定義 ]タブのフィールドを使用して、イベントトリガーを定義します。
トリガー有効 フィールドのドロップダウンから値を選択して、トリガーのステータスを指定します: 有効 無効 、 レプリカ 常に 。
トリガー関数 の横にあるドロップダウンリストボックスを使用して、既存の関数を指定します。トリガー関数は空の引数リストを取り、event_triggerタイプの値を返します。
Events フィールドのドロップダウンから値を選択して、イベントトリガーを起動するタイミングを指定します。 DDLCOMMANDSTART 、 DDLCOMMANDEND 、または SQLDROP 。
WhenTAGin フィールドを使用して、トリガーが実行されるTAGのフィルター値を入力します。値はコンマで区切って一重引用符で囲む必要があります。
[ セキュリティラベル ]タブをクリックして続行します。
[ セキュリティ ]タブを使用して、トリガーに適用されるセキュリティラベルを定義します。 追加 アイコン(+)をクリックして、各セキュリティラベルを追加します。
Provider フィールドにセキュリティラベルプロバイダーを指定します。名前付きプロバイダーをロードし、提案されたラベル付け操作に同意する必要があります。
セキュリティラベル フィールドにセキュリティラベルを指定します。特定のラベルの意味は、ラベルプロバイダーの裁量にあります。PostgreSQLは、ラベルプロバイダーがセキュリティラベルを解釈する必要があるかどうか、またはどのように解釈するかについて制限を設けていません。それらを格納するメカニズムを提供するだけです。
Add アイコン(+)をクリックして、追加のセキュリティラベルを割り当てます。セキュリティラベルを破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。
SQL タブをクリックして続行します。
イベントトリガー ダイアログに入力すると、SQLコマンドが生成されます。確認には SQL タブを使用します。再アクセスするかタブを切り替えて、SQLコマンドを変更します。
例¶
以下は、 イベントトリガー ダイアログでのユーザー選択によって生成されたsqlコマンドの例です。
このコマンドは、 evt_tri_fun という名前のプロシージャーを呼び出す accounts という名前のイベントトリガーを作成します。
Info ボタン(i)をクリックして、オンラインヘルプにアクセスします。
Save ボタンをクリックして作業を保存します。
作業を保存せずに終了するには、 閉じる ボタンをクリックします。
Reset ボタンをクリックして、構成パラメーターを復元します。