17.05 - SET SESSION TRANSACTION ISOLATION LEVEL構文要素 - Advanced SQL Engine - Teradata Database

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

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Published
2021年1月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-175K-JPN
Language
日本語 (日本)
Last Update
2021-03-30
isolation_level
現在のセッションで有効なデフォルト トランザクション分離レベル。
有効なトランザクション分離レベルは以下のとおりです。
READ UNCOMMITTED
RU
DBS制御パラメータAccessLockForUncomReadがTRUEに設定されている場合は、DELETE、INSERT、MERGE、UPDATEの各リクエストに組み込まれているSELECT操作に関する現行セッションの読み取り専用ロッキング強度をACCESSに設定します。そうでない場合、そうしたリクエストに関する読み取り専用ロッキング強度はREADのままになります。
DELETE、INSERT、UPDATEのいずれかのリクエストに組み込まれていない外部SELECTリクエストとSELECT subqueryの場合、読み取り専用ロッキング強度のデフォルト設定は常にREADになります。
トランザクションの分離レベルがREAD UNCOMMITTEDに設定されているときに、DELETE、INSERT、MERGE、UPDATEのいずれかのリクエストに組み込まれているSELECT操作に関する読み取り専用ロッキング強度がREADのままになるのは、DBS制御パラメータAccessLockForUncomReadの設定がFALSEの場合に限られます。
AccessLockForUncomReadがTRUEに設定されている場合、それらのリクエストに関するデフォルトの読み取りロッキング強度はACCESSになります。
RUとREAD UNCOMMITTEDは同義語です。
SERIALIZABLE
SR
非テンポラル テーブルに対して実行されるすべてのSELECTリクエスト(外部SELECTリクエストかSELECT subqueryかにかかわらず)に関する現行セッションの読み取り専用ロッキング強度を、DBS制御パラメータAccessLockForUncomReadの設定に関係なく、READに設定します。
トランザクションの分離レベルがSERIALIZABLEに設定されているかどうかにかかわらず、現在のセマンティクスを使用するDML操作またはCURRENT VALIDTIME修飾子を指定するDML操作で逐次性違反が発生する場合があります。いつ発生するか、発生する理由、およびその回避方法の詳細については、<Teradata Vantage™ - テンポラル テーブル サポート、B035-1182>を参照してください。
SRとSERIALIZABLEは同義語です。
なお、トランザクションの分離レベルは、ロック レベルではなくロック重大度に影響するので注意してください(ロック重大度ロック レベルの詳細については<Teradata Vantage™ - SQLリクエストおよびトランザクション処理、B035-1142>を参照)。