Repositioning, Single Buffering | Analytics Database (SQL Engine) - 単一バッファ処理をして、再位置付けをする場合 - Call-Level Interface Version 2

Teradata® Call-Level Interfaceバージョン2 リファレンス - ワークステーション接続システム - 17.20

Product
Call-Level Interface Version 2
Release Number
17.20
Published
2022年10月10日
Language
日本語
Last Update
2022-11-21
dita:mapPath
ja-JP/zws1641280432166.ditamap
dita:ditavalPath
ja-JP/obe1474387269547.ditaval
dita:id
B035-2418
Product Category
Teradata Tools and Utilities

以下の情報は、アプリケーションで単一バッファ処理が選択され、要求が単文の場合に適用されます。 CLIは、たとえ二重バッファ処理が設定され、応答の再位置付けが要求されている場合でも、単一バッファ モードにおいてのみ応答を取り出します。

アプリケーション

アプリケーションは、DBCAREAで次のタスクを実行します。
  • 必要な応答のセッションidと要求idを与えます。
  • 要求が移動モードの処理オプション付きで実行依頼された場合には、応答領域の長さと応答領域を指すポインタを与えます。
  • 必要に応じて、DBCAREAフィールドのfields positioning_action、positioning_value、positioning_stmt_numberを設定します。
  • 関数コードをFETCH(DBFFET)に設定します。
  • DBCHCLを呼び出します。

DBCHCL

特定のセッションがアクティブで、同セッションの接続先となるデータベースが、カーソルの再位置付けをサポートしている場合、
  • 活動状態の要求用のRCBが作成されます
  • waitdataオプション フラグと、その他のカーソル再位置付けフラグが、セッション識別子や要求識別子と合わせて、MTDPに渡されます。
  • MTDPが、要求が完了するのを調べるか待つために呼び出されます。
以下のケースでは、アプリケーションにエラーが返されます。
  • 要求の開始時、keep_respが「P」に設定されていない場合
  • 要求が正常に終了しなかった場合
  • 要求された再位置付けが無効な場合

その他の場合、DBCHCLはPclROWPOSITION/PclOFFSETPOSITIONパーセルをその要求の要求バッファ内に置き、指定された要求のセッションidと要求idをMTDPCBに与え、MTDPCBの関数コードをMTDPCONTに設定して、MTDPを呼び出します。

MTDP

MTDPは、Continue Requestメッセージをデータベースに送信します。 MTDPは、そのあとで制御をDBCHCLに返します。

DBCHCL

成功または失敗のメッセージがDBCAREAのメッセージ フィールドに生成されて、DBCHCLは制御をアプリケーションに返します。

アプリケーション

DBCAREAの戻りコードまたはエラー フラグが正常でなければ、アプリケーションは適切な変更を行なって、そのDBCAREAをDBCHCLに再実行依頼します。正常であれば、再配置しない場合と同様にフェッチを実行し、その単位の応答を消費します。通常、アプリケーションはEndRequestパーセルを取得するまで、ループ バックして別の単位の応答を処理します。