16.20 - ROLLBACKは明示的 - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQLデータ操作言語

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Release Date
2019年3月
Content Type
プログラミング リファレンス
Publication ID
B035-1146-162K-JPN
Language
日本語 (日本)

ANSIセッション モードには、暗黙のトランザクションはありません。より正確に言うと、各ANSIトランザクションは暗黙的に開始されますが、常に明示的に完了します。COMMITまたはABORT/ROLLBACKリクエストは、必ず明示的に指定しなければならず、トランザクションを正常に終了させるためには、トランザクションの最後のリクエストでなければなりません。

ANSIセッション モードでは、トランザクション内のリクエストがSELECTまたはSELECT AND CONSUMEのみの場合でも、ABORT/ROLLBACK、またはCOMMITリクエストのどれかを発行する必要があります。

SELECTリクエストの場合、COMMITまたはABORT/ROLLBACKのいずれを発行しても違いはありません。

SELECT AND CONSUMEの場合、COMMITを発行するのと、ABORT/ROLLBACKを発行するのとでは出力に違いがあります。これは、ABORTまたはROLLBACKリクエストはリクエストの対象のキュー テーブルを以前の状態に回復し、これにはアボートされたSELECT AND CONSUMEリクエストで擬似的に消費された行も含まれるからです。