17.10 - 例: SET句の使用 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-171K-JPN
Language
日本語 (日本)

この例では、BEFORE行トリガーでトリガーされるアクション文としてSET句を使用します。

以下に、対象テーブルの定義を示します。USING INSERTリクエストを使用するソース ファイルからテーブルのamount列に値がロードされるとします。

     CREATE TABLE subject_table (
       entry_date DATE, 
       amount     INTEGER); 

以下に、トリガーの定義を示します。

     CREATE TRIGGER set_trig
       BEFORE INSERT ON subject_table 
       REFERENCING NEW AS curr_value 
       FOR EACH ROW 
       SET curr_value.entry_date = DATE;
       -- Adds the current system date to the entry_date column

SET句が割り当てられているので、次のトリガー文

     USING (amount INTEGER) 
     INSERT INTO subject_table VALUES (NULL,:amount); 

は、次の文と同様に実行されます。

     USING (thisdate DATE, amount INTEGER)
     INSERT INTO subject_table VALUES (:thisdate, :amount);