トリガーされるアクション文 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/jpx1556733107962.ditamap
dita:ditavalPath
ja-JP/jpx1556733107962.ditaval
dita:id
B035-1184
Product Category
Software
Teradata Vantage

トリガーされるアクション文には、1つ以上のSQL文を指定できます。有効な文を以下の表にまとめます。

トリガーのタイプ 有効な文
AFTER
  • ABORT
  • CALL
  • DELETE
  • INSERT
  • INSERT … SELECT

    これは、標準のINSERT … SELECT文にのみ適用されます。INSERT … SELECT AND CONSUME文は、有効なトリガー アクション文ではない

  • ROLLBACK
  • Atomic Upsert
  • UPDATE
  • いずれかの有効な文を含むマクロのEXEC
BEFORE
  • ABORT
  • データ変更文を含まないマクロのEXEC
  • ROLLBACK
  • SET句(INSERTおよびUPDATE行トリガーのみ)

トリガーされるアクション文の中で、UDFを実行してストアド プロシージャを呼び出せます。トリガーされる有効なアクション文には、UDT式を含めることができます。

これらの文をSQLで使用するための一般ルールは、これらの文をトリガーされるアクション文として使用するときにも適用されますが、以下の相違点があります。
  • トリガーされるアクション文の実行後には、データベースによってCLIv2応答パーセルが生成されません。
  • トリガーされるアクション文は、要求しているユーザーにアボートまたは失敗のメッセージのみを報告します。
  • トリガーされるアクション文の実行は自動的であり、SQLトランザクションを明示的に中止することはできません。

    SQL文の自動実行が失敗した場合、その文によるデータまたは構造の変更はすべて、システムにより取り消されます。

トリガー文のアクションは、以下の情報を含む単一の応答を返します。
  • 成功または失敗
  • トリガー文のアクティビティ タイプ
  • トリガー文によって変更された行の数

トリガーされるアクション文のいくつかについては、以下の重要な注意点があります。

指定する文 結果
INSERT… SELECT この文によるトリガー テーブルへの直接の参照は、外部参照として扱われます。
Atomic Upsert 条件は(固有、非固有を問わず)プライマリ インデックスに関するものでなければなりません。