ステータス値のテスト - Basic Teradata Query

Basic Teradata® Queryリファレンス

Product
Basic Teradata Query
Release Number
17.10
Published
2022年2月
Language
日本語
Last Update
2022-02-11
dita:mapPath
ja-JP/nnw1608578382132.ditamap
dita:ditavalPath
ja-JP/obe1474387269547.ditaval
dita:id
B035-2414
Product Category
Teradata Tools and Utilities

BTEQは、最近実行依頼されたSQL文とOSコマンドの結果を反映する複数のステータス値を追跡します。値は関連付けられたキーワードをIFおよびELSEIFコマンドの条件の一部として使用することによってテストすることができます。これらの値には、EXITやEXITONDELAYなど、他のコマンドの引数としても使用できるものがあります。値は次のいずれかです。

キーワード 説明
ACTIVITYCOUNT 直前に送信されたリクエストにより影響を受けた行数を示す。データを返すリクエストでは、データベースからBTEQに返される行の数になる。値は、0または正の整数。Teradata Database 14.10以前の最大値は4,294,967,295。Teradata Database 14.10から、最大値は18,446,744,073,709,551,615に増加する。
BTEQRETURNCODE BTEQがEXIT RCとして使用する現在値を示す。ユーザー エラーがある場合、これはERRORLEVELとは異なることがある。例えば、最初のログオンなしにCOMPILEコマンドを使用する目的で2に設定されている場合がある。
DELETECOUNT 最後に実行依頼されたリクエストがMERGE文に関するものであった場合に削除する行数を示します。値は0または正の整数です。最大値は18,446,744,073,709,551,615です。
ERRORCODE 前回実行依頼されたリクエストに対してデータベースが返したエラー コードを示します。値は0または正の整数です。0はリクエストがエラーなしで完了したことを意味します。設定したERRORCODEの値はREPEATEDリクエストの間に変わる場合があります。最後に繰り返されたリクエストの値のみが使用可能です。
ERRORLEVEL 返される0以外の各ERRORCODE値にマップしたときに、最も高い重大度が発生したことを示す。値は0または正の整数。最大値は2147483647。前に返されたERRORCODEのすべての値が0の場合、ERRORLEVELも0になる。送信したリクエストでエラーが発生しなかった場合、ERRORLEVELは、ERRORCODEの場合と同様に0にリセットされない。したがって、最後に送信したリクエストに対してERRORLEVELをテストする必要がある場合には、まずERRORCODEをテストして、リクエストが正常に終了したかどうかを確認する。ERRORLEVELは、他の値の使用が指定されていない場合は、BTEQのデフォルトEXIT RC値として使用される。新しいデータベース セッションの確立にLOGONコマンドが使用された場合、重大度の値は0にリセットされる。
INSERTCOUNT 最後に実行依頼されたリクエストがMERGE文に関するものであった場合に挿入する行数を示します。値は0または正の整数です。最大値は18,446,744,073,709,551,615です。
UPDATECOUNT 最後に実行依頼されたリクエストがMERGE文に関するものであった場合に更新する行数を示します。値は0または正の整数です。最大値は18,446,744,073,709,551,615です。
WARNINGCODE 前回実行依頼されたリクエストに対してデータベースが返した警告コードを示す。値は0または正の整数。関連付けられたSQL文が成功した場合は、0より大きい値にのみ設定できる。それ以外の場合はERRORCODEが設定される。固有のデータベース警告コードのセットは、固有のデータベース エラー コードのセットと重複しない。ERRORONDBSWARNINGコマンドを使用して、警告をエラーとして扱うようにBTEQに指示することができる。ERRORONDBSWARNINGをオンにすると、データベースが0以外の警告コードを返すときにWARNINGCODEとERRORCODEの両方が設定される。また、ERRORLEVELはコードに関連付けられた重大度レベルの値が既存のERRORLEVELの値よりも大きい場合に変更される。
SYSTEMRETURNCODE 最後に処理されたOSまたはTSOコマンドに対する戻り値を示します。負の値と正の値の場合があります。0以外の値の解釈はユーザーに依存します。それらの値は、必ずしも実行されたシステム コールが実際に失敗したことを意味するものではありません。キーワードはBTEQのすべてのフレーバーのIFコマンド条件で使用することができます。その値が変更されるときに、BTEQのデフォルトのEXIT RCは変更されません。ただし、キーワードをEXITコマンドの引数として使用することができます。しかし、これはWindows BTEQをDOSとして使用し、PowerShellが負の値の戻りコードをサポートする場合のみです。UNIXシェルおよびz/OS JCLはそれをサポートしていません。