3.11 トリガーの管理

データベース・トリガーは、データベースの表、ビューまたはイベントに関連付けられているストアド・サブプログラムです。オブジェクト・ブラウザを使用して、トリガーを作成、表示、編集、コンパイル、ダウンロード、削除および無効化または有効化できます。

トリガーは、イベントが発生したときなどに1回コールするか、INSERT、UPDATEまたはDELETE文の影響を受ける各行などに対して複数回コールすることができます。

3.11.1 トリガーの作成

オブジェクト・ブラウザを使用してトリガーを作成します。

オブジェクト・ブラウザでトリガーを作成するには:

  1. オブジェクト・ブラウザで、「データベース・オブジェクトの作成」メニューをクリックし、「トリガー」を選択します。

    ヒント:

    オブジェクト・ツリーから新しいオブジェクトを作成するには、オブジェクトを右クリックして「作成」オプションを選択します。

    トリガーの作成ウィザードが表示されます。

  2. トリガーの作成で次のように指定します:
    1. 表 - トリガーを作成する表を選択します。
    2. トリガー名 - 選択した表に基づいてトリガー名が自動的に生成されます。必要に応じて、トリガー名を変更します。この名前は、Oracleのネーミング規則に従う必要があり、空白を含めたり、数字またはアンダースコアで開始することはできません。
    3. 実行ポイント - 実行ポイントを指定します:
      • - トリガーするイベントを実行する前にデータベースによってトリガーを起動できます。
      • - トリガーするイベントを実行した後にデータベースによってトリガーを起動できます。
  3. 「トリガーの作成」をクリックします。

3.11.2 トリガーの表示

オブジェクト・ツリーからトリガーを選択し、「オブジェクトの詳細」ビューでタブにアクセスします。

トリガーを表示するには:

  1. オブジェクト・ブラウザのオブジェクト・ツリーで、「トリガー」を展開し、トリガーを選択します。
  2. 「オブジェクトの詳細」ビューが表示され、4つのタブが表示されます:

    ヒント:

    「コード」および「DDL」タブには、完全に機能するコード・エディタがあります。コード・エディタについてさらに学習するには、「オブジェクト・ブラウザのコード・エディタ」を参照してください。
    • コード - トリガー・コードを表示するか、手動で編集します。使用可能なアクションは次のとおりです:
      • ダウンロード
      • 保存してコンパイル
      • 削除
      • リフレッシュ
    • エラー - 現在のトリガーに関連するエラーを表示します。「リフレッシュ」ボタンを選択して、エラーのリストをリフレッシュします。
    • オブジェクトの詳細 - トリガーの詳細を表示します。使用可能なアクションは次のとおりです:
      • コンパイル
      • 削除
      • 有効化
      • 無効化
      • リフレッシュ
    • DDL - トリガーの再作成に必要なDDLを表示します。使用可能なアクションは次のとおりです:
      • ダウンロード
      • リフレッシュ

3.11.3 トリガーの編集

オブジェクト・ツリーからトリガーを選択します。

  1. オブジェクト・ブラウザのオブジェクト・ツリーで、「トリガー」を展開し、トリガーを選択します。
    「オブジェクトの詳細」ビューが表示されます。
  2. 「コード」タブで、コードを編集します。他の編集コントロールは次のとおりです。
    • 元に戻す
    • やり直し
    • 検索
    • オートコンプリート

    ヒント:

    コード・エディタについてさらに学習するには、「オブジェクト・ブラウザのコード・エディタ」を参照してください。
  3. 「保存してコンパイル」を選択して変更を保存します。

3.11.4 トリガーのコンパイル

オブジェクト・ツリーからトリガーを選択し、「保存してコンパイル」をクリックします。

オブジェクト・ブラウザでトリガーをコンパイルするには:

  1. オブジェクト・ブラウザのオブジェクト・ツリーで、「トリガー」を展開し、トリガーを選択します。
    「オブジェクトの詳細」ビューが表示されます。
  2. トリガーをコンパイルします:
    • 「コード」タブで、「保存してコンパイル」をクリックします。
    • 「オブジェクトの詳細」タブで、「コンパイル」をクリックします。
    コンパイルが失敗すると、エラー・メッセージが表示されます。エラーを訂正して、トリガーを再コンパイルします。

3.11.5 トリガーのダウンロード

オブジェクト・ツリーからトリガーを選択し、「ダウンロード」をクリックしてファイルとしてトリガーを保存します。

トリガーをファイルとしてダウンロードするには:

  1. オブジェクト・ブラウザのオブジェクト・ツリーで、「トリガー」を展開し、トリガーを選択します。
    「オブジェクトの詳細」ビューが表示されます。
  2. トリガーをダウンロードします:
    • 「コード」タブで、「ダウンロード」をクリックします。
    • 「DDL」タブで、「ダウンロード」をクリックします。
  3. ファイル名を入力して、「保存」をクリックします。
    ファイルは.sql形式で保存されます。

3.11.6 トリガーの無効化と有効化

オブジェクト・ツリーからトリガーを選択して、「有効化」または「無効化」をクリックします。

オブジェクト・ブラウザでトリガーを有効化および無効化するには:

  1. オブジェクト・ブラウザのオブジェクト・ツリーで、「トリガー」を展開し、トリガーを選択します。
    「オブジェクトの詳細」ビューが表示されます。
  2. 「オブジェクトの詳細」タブで、「有効化」または「無効化」をクリックします。

    ヒント:

    「オブジェクトの詳細」タブの「トリガーのステータス」は、トリガーが現在ENABLEDDISABLEDかを示します。
トリガーのステータスが更新されます。

3.11.7 トリガーの削除

オブジェクト・ツリーからトリガーを選択して、「削除」をクリックします。

トリガーを削除するには:

  1. オブジェクト・ブラウザのオブジェクト・ツリーで、「トリガー」を展開し、トリガーを選択します。
    「オブジェクトの詳細」ビューが表示されます。
  2. トリガーを削除します:
    • 「コード」タブで、「削除」をクリックします。
    • 「オブジェクトの詳細」タブで、「削除」をクリックします。
  3. 「削除」をクリックしてトリガーを削除します。