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

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

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

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;