17.05 - 2種類のROLLBACKリクエスト - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ操作言語

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

ROLLBACKリクエストには、構文解析プログラムによる評価が可能でテーブルへのアクセスを必要としないものと、テーブルへのアクセスを必要とするものという、2つの種類があります。

テーブルを参照しないROLLBACK式を処理し、その実行順序が複文リクエストまたはマクロ内のその他のリクエストと比べて重要でない場合、その式は、テーブルを参照するリクエストよりも前に置くべきです。そうすることにより、早くロールバック操作を実行できます。

次の例では、最初の2つのROLLBACKリクエストは構文解析プログラムによって評価することができ、テーブルへのアクセスを必要としません。3番目のROLLBACKリクエストは、テーブルへのアクセスが必要です。

     CREATE MACRO macro_name (
       p1 INTEGER,
       p2 INTEGER)
     AS. . .
     ROLLBACK 'error' WHERE :p1 < 0;
     ROLLBACK 'error' WHERE :p2 < 0;
     SELECT. . .
     ROLLBACK 'error' WHERE tab.c1 = :p1;