エラー処理およびトランザクションの意味 - ODBC Driver for Teradata

ODBC Driver for Teradata® ユーザー ガイド

Product
ODBC Driver for Teradata
Release Number
16.20
Published
2018年10月
Language
日本語
Last Update
2019-02-12
dita:mapPath
ja-JP/fxv1527114222338.ditamap
dita:ditavalPath
ja-JP/fxv1527114222338.ditaval
dita:id
B035-2526
Product Category
Teradata Tools and Utilities

データベース内では、トランザクションのコミットと、配列要求の要求レベルおよびトランザクション レベルでのアボートは、同等の複文要求に一致します。パラメータ配列要求に対するトランザクションの意味は、エミュレートされたものでもエミュレートされないものでも同じです。すでに処理されたパラメータ行を含む、パラメータ配列要求全体がロールバックされます。

エラーは、同等の複文要求に対する場合とまったく同様に処理されます。結果のFailureパーセルに入れてデータベースからクライアントに返されるエラー情報は、展開された要求からのものと一致します。失敗の原因となったパラメータ セットは、Failureパーセル内でステートメント番号によって識別されます。

パラメータ配列文の実行中にエラーが発生すると、実行関数はエラーを返し、行番号変数を、エラーが含まれる行の番号に設定します。エラー セット以外の全行を実行するかエラー セットよりも前の全行(後のものは除く)を実行するかは、データ ソースに固有のものです。エラーの場合、ODBC Driver for Teradataでは常にパラメータ配列リクエスト全体が失敗します。

エラーが発生した場合には、Failureパーセル内のステートメント番号を使用して、失敗したパラメータ セットの行番号が取得され、診断レコードの対応するSQL_DIAG_ROW_NUMBERフィールドが設定されます。

診断レコードのSQL_DIAG_COLUMN_NUMBERは、ドライバによってSQL_COLUMN_NUMBER_UNKNOWNに設定されます。ドライバは、失敗したパラメータ番号を判定できないためです。

SQL_ATTR_PARAMS_PROCESSED_PTR文属性によって指定されたバッファは、失敗したパラメータ セットの番号に設定されます。