BTEQ戻りコード - Basic Teradata Query

Basic Teradata Queryリファレンス

Product
Basic Teradata Query
Release Number
16.20
Published
2018年4月
Language
日本語
Last Update
2019-07-03
dita:mapPath
ja-JP/moy1512703123963.ditamap
dita:ditavalPath
ja-JP/moy1512703123963.ditaval
dita:id
B035-2414
Product Category
Teradata Tools and Utilities

BTEQの戻りコードは、実行が完了したときにクライアントのオペレーティング システムに返される値です。 戻りコードの値は、ジョブまたはタスクの完了状態を示しています。

戻りコード 説明
00 ジョブは正常に終了した。
02 BTEQは、セッションへのログオンなしにSQLリクエストの命令が与えられたことを通知する警告を生成する必要があった。
04 警告
08 ユーザー エラー
12 重大な内部エラー

BTEQのデフォルトの戻りコードの値は、入力命令の実行中にTeradata Databaseから返された中で最も重大なエラー コードによって決まります。BTEQは各エラー コードに、0、4、8、12の戻りコードに対応するデフォルトの重大度の値を割り当てます(次のテーブルを参照してください)。例えば、SQLリクエストによってデータベース エラー3737(名前が30文字を超えている)が生成された場合には、EXITコマンドで別の値を明示的に使用しない限り、終了時に戻りコードとして最小で4が使用されます。

BTEQは、ERRORLEVELステータス値キーワードを使用して終了前の戻りコードの現在値を公開します。このキーワードをIF...THEN...コマンドの条件で使用すると、個々の複数のエラー コードを明示的にテストするのではなく、特定の重大度レベルへの到達に基づいて、適切な処置をとることが容易になります。

また、データベースのエラー コードにマップされた重大度を変更し、エラーの重大度レベルを追加するために使用できるERRORLEVELコマンドもあります。以下のテーブルに示されていないTeradata Databaseのメッセージは、ERRORLEVELコマンドでデフォルトを変更していない限り、重大度の値8にマップされます。次の項で説明するERRORLEVELコマンドを参照してください。

2631エラーにマップされているデフォルトの重大度は0です。詳細については、RETRYコマンドの使用上の注意を参照してください。

さらに重大なコンパイラ エラーの結果の検出をサポートするために、デフォルトの重大度のマップには、オブジェクトのコンパイルと実行に関する一般的な警告コードをカバーする関連付けが含まれています。これらのマッピングは、ERRORONDBSWARNINGコマンドの設定がONの場合にのみ有効になります。

戻りコード04に対するデフォルトのエラー メッセージの割り当て
エラー コード 説明
2580 テーブル%TVMIDに関してMloadがアクティブでない。
2667 空のテーブルの統計情報は収集できない。
3534 インデックスは、すでに存在している。
3666 このビューは列が多すぎて、注釈の保存または検索ができない。
3737 名前が30文字を超えている。
3747 始動文字列が定義されていない。
3803 テーブル"%VSTR"はすでに存在する。
3804 ビュー"%VSTR"はすでに存在する。
3805 マクロ"%VSTR"はすでに存在する。
5527 コンパイラで、ストアド プロシージャ以外のオブジェクトに関する警告のみが報告された。この値は、エラー コードではなくデータベース警告コードとして返されたため、ERRORONDBSWARNINGがONに設定されている場合にのみERRORLEVELステータス値に影響する。
5607 コンパイラで、ストアド プロシージャ オブジェクトに関する警告のみが報告された。この値は、エラー コードではなくデータベース警告コードとして返されたため、ERRORONDBSWARNINGがONに設定されている場合にのみERRORLEVELステータス値に影響する。
戻りコード08に対するデフォルトのエラー メッセージの割り当て
エラー コード 説明
CLI0530 文字セット名またはコードが不明。
2123 セグメントを正常に読み取ることができない。
2538 テーブル領域でディスクの読み取りエラーが発生した。
2541 ハッシュ コード範囲の最後に達した。
2632 このFast/MultiLoadに関して、すべてのAMPがセッションを所有している。
2639 同時並行トランザクションが多すぎる。
2641 %DBID.%TVMIDが再構築された。再度実行すること。
2644 データベース%DBIDに空きがない。
2654 操作が許可されていない。%DBID.%TVMIDを復元中。
2805 %TVMIDで行の最大長を超えている。
2809 無効な回復シーケンスが検出された。
2815 復元の再始動が明らかに無効。
2818 変更後イメージ ジャーナリングのないダンプ テーブルの無効なロック。
2825 Teradata Databaseの再始動後、最後のリクエストに対するレコードがない。
2826 リクエストは完了したが、Teradata Databaseが再始動したためにすべての出力が失なわれた。
2827 ユーザーによってまたは文のエラーのため、リクエストがアボートされた。
2828 システム回復時に、リクエストがロールバックされた。
2830 固有セカンダリ インデックスは、テーブルを復元する前に削除しなければならない。
2835 固有インデックスが無効化された。 リクエストを再度実行すること。
2837 テーブルを高速ロード中。ダンプされたデータはない。
2838 テーブルがアンハッシュされた。ダンプされたデータはない。
2840 ハッシュ コードが矛盾しているため、データ行が破棄された。
2843 データベースに空きがない。
2866 テーブルの復元がアボートされた。ダンプされたデータはない。
2868 この永久ジャーナル テーブルは損傷している。ダンプされたデータはない。
2920 二重でないジャーナルを削除してAMPがダウンした。
2921 ジャーナル%DBID.%TVMIDに対して保存されている副テーブルはない。
2926 DBID.%TVMIDに空きがない。
3001 セッションはすでにログオンしている。
3111 ディスパッチャがトランザクションをタイムアウト処理した。
3116 レコードを保持するには、応答バッファのサイズが不十分。
3119 リクエストを継続して実行依頼しているが、応答がない。
3120 Teradata Databaseの回復のため、リクエストがアボートされた。
3127 キュー テーブル マネージャとロックが競合しているためトランザクションがアボートされた。
3128 文の消費の上限を超えたためにトランザクションがアボートされた。
3178 キュー テーブル キャッシュがいっぱいである。
3319 TDWM制御コマンドがタイムアウトした。
3329 クエリー バンドが移行状態である。
3415 このセッションに対するアクティブなリクエストがある。
3523 %FSTRには、%DBID.%TVMIDへの%VSTRアクセス権がない。
3524 %FSTRには、データベース%DBIDへの%VSTRアクセス権がない。
3566 データベースに永久ジャーナルがない。
3596 テーブル、ビュー、マクロがTeradata Database内にない場合には、RESTORE Teradata Databaseは無効。
3598 データベースで変更要求が競合したため、再実行すること。
3603 テーブルで変更要求が競合したため、再実行すること。
3613 ダンプ/復元、ハッシュされている非フォールバック テーブルが見つからない。
3656 指定されたジャーナル テーブルは存在しない。
3658 ROLLBACK/ROLLFORWARDテーブルの指定が無効。
3705 Teradata SQLリクエストが、Simulatorの最大より大きい。
3802 データベース"%VSTR"は存在しない。
3807 テーブル/ビュー"%VSTR"は存在しない。
3824 マクロ"%VSTR"は存在しない。
3873 "%VSTR"はジャーナル テーブルでない
3877 NO FALLBACKが指定されたが、テーブルはFALLBACKである。
3897 Teradata Databaseの再始動のため、リクエストがアボートされた。 再度、実行すること。
3916 要求された情報がディクショナリにない。
5495 ストアド プロシージャ%VSTRは存在していない。
5880 ストアド プロシージャで同時変更が競合した。
5991 意味解釈ルーチンまたはプランの生成中にエラーが発生した。
7423 オブジェクトがすでにロックされていてNOWAIT状態であるため、 トランザクションがアボートされた。
7592 スペース アカウンティング キャッシュが消去できないエントリでいっぱいである。
7618 %DBID.%TVMIDに対するストアド プロシージャの実行リクエストがタイムアウトした。
7676 ストアド プロシージャ キャッシュ内に十分なメモリがない。
8024 すべての仮想回路が現在使用中である。
8086 ノード上のすべての仮想回路が使用中である。
9728 現在、テーブル%DBID.%TVMIDに対するロード処理が進行中であるため、後で再試行すること。
戻りコード12に対するデフォルトのエラー メッセージの割り当て
エラー コード 説明
CLI0001 パラメータ リストが無効、またはない。
CLI0002 パラメータ数が無効。
CLI0003 HSIRCB検証エラー。
CLI0004 HSICB検証エラー。
CLI0005 HSISPB検証エラー。
CLI0006 正しいHSICBを指していない。
CLI0007 正しいRCBを指していない。
CLI0008 RCB/HSICB制御ブロックがストレージで隣接していないため、DBCFRCがこれを解放できない。
CLI0009 DBCAREAのポインタまたはIDが間違っている。
CLI0010 CLIリクエストが実行できない。
2971 AMPロック テーブルがオーバーフローした。
2972 テーブル ヘッダーがない。
5526 コンパイラで、ストアド プロシージャ オブジェクトに関するエラーが報告され、場合によっては警告も報告された。この値は、エラー コードではなくデータベース警告コードとして返されたため、ERRORONDBSWARNINGがONに設定されている場合にのみERRORLEVELステータス値に影響する。
5603 コンパイラで、ストアド プロシージャ以外のオブジェクトに関するエラーが報告され、場合によっては警告も報告された。この値は、エラー コードではなくデータベース警告コードとして返されたため、ERRORONDBSWARNINGがONに設定されている場合にのみERRORLEVELステータス値に影響する。
7980 Javaクラスの依存関係が満たされていない。この値は、エラー コードではなくデータベース警告コードとして返されたため、ERRORONDBSWARNINGがONに設定されている場合にのみERRORLEVELステータス値に影響する。