17.10 - 使用上の注意 - 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-1146-171K-JPN
Language
日本語 (日本)

全体の使用上の注意

CHECKPOINTで指定したテーブルにジャーナル イメージが書き込まれるすべてのデータ テーブルに対してREADロックが設定されます。このロックのため、チェックポイント操作が終了するまで新しいトランザクションは開始することができません。さらに、更新トランザクションが終了してからチェックポイント操作が行なわれます。

この動作によりジャーナルに保存されるチェックポイントが、トランザクションのない時点を正確に表わすことができます。チェックポイント操作が終了すると、ロックが解除されます。

各チェックポイント登録項には、システムによってイベント番号が割り当てられます。 さらに、この番号はCHECKPOINTリクエスト処理の結果として返されます。この番号はリクエストの実行に関する他の情報とともに、データ ディクショナリ テーブルに格納されます。このテーブルのデータは、DBC.EventsVシステム ビューから見直すことができます。

明示的なトランザクションまたは複文リクエストにCHECKPOINTリクエストが入っている場合、そのCHECKPOINTリクエストは、トランザクションまたはリクエスト内のどのINSERT、UPDATE、またはDELETEリクエストよりも前になければなりません。

ストアド プロシージャと埋め込みSQLの使用上の注意

以下のルールがCHECKPOINTに適用されます。
  • ストアド プロシージャと埋め込みSQLのCHECKPOINTはデータを返すリクエストです。
  • CHECKPOINTはデータを返すリクエストですが、選択カーソルと関連付けることはできません。
  • checkpoint_labelまたはlabel_host_variableのどちらとして指定するにしても、チェックポイント ラベルは有効なSQL識別子でなければなりません。
  • label_host_variableを指定する場合は、クライアント言語のSQL文字列のルールに従ってホスト変数を指定しなければなりません。また、ホスト変数の先頭にコロンを付ける必要があります。詳細については、<SQLストアド プロシージャおよび埋め込みSQL>を参照してください。
  • host_variable_nameによって識別されるメイン ホスト変数は、INTEGERに準拠した型でなければなりません。
  • CHECKPOINTを動的SQL文として実行することはできません。

CHECKPOINTを実行すると、同期ポイントが生成され、table_nameで指定したジャーナル テーブルに記録されます。

NAMED句を指定した場合は、チェックポイント ラベルが同期ポイントと関連付けられます。同期ポイントを固有に識別する32ビット整数が、ホスト変数指定で定義したメイン ホスト変数内に返されます。

Preprocessor2に対してTRANSACT(2PC) オプションを指定した場合は、CHECKPOINTが無効になります。