17.00 - 17.05 - SQLSTATEの値 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Published
2020年6月
Content Type
プログラミング リファレンス
Publication ID
B035-1147-170K-JPN
Language
日本語 (日本)

sqlstate出力文字列の最初の5文字は'ccsss'という形式です。ccはクラス、sssはサブクラスです。この文字列の最後の文字は2進ゼロ(Cの文字列終了文字)です。UDFがSQLSTATE結果コードとして戻すことのできるより実用的で有効な設定値のいくつかを次のテーブルに示します。

カテゴリ クラス 条件 サブクラス サブ条件
成功 00 エラーなし 000 なし。
02 データなし 000 なし。
警告 01 警告 H xx 外部ルーチンによる警告。

xxの値はプログラマによって指定されます。

例外 38 外部ルーチン例外 000 なし。
002 述部に対して無効な戻り値。
39 外部ルーチン呼び出し例外 000 なし。
001 無効なSQLSTATE戻り値。このエラーは、関数が不正なSQLSTATEを戻したことを示しています。
002 NULL値使用不可。
22 データ例外 000 なし。
021 レパートリーにない文字。
008 日時フィールドのオーバーフロー。
012 0による除算。
005 代入エラー。
022 インジケータ オーバーフロー。
015 インターバル フィールドのオーバーフロー。
018 無効な日付時刻の形式。
019 無効なエスケープ文字。
025 無効なエスケープ シーケンス。
010 無効なインジケータ パラメータ値。
020 無効な制限値。
023 無効なパラメータ値。
002 NULL値、インジケータ パラメータなし。
003 範囲外の数値。
004 NULL値使用不可。
026 文字列データ長の不一致。
001 文字列データの右側切り捨て。
027 トリム エラー。
024 C文字列の終了文字欠落。
00F 長さ0のC文字列。
  U0 ユーザー定義のデータ例外 xxx ユーザー定義の例外。

xxxの値はプログラマによって指定されます。