DB2 コネクターのメッセージおよび制限事項

 

オペレーションについては「共通」(オペレーショントップページ)を参照してください。

DB2カテゴリのメッセージコード一覧

DB2 Connectorで発生するエラーに対応するメッセージコードです。

 

DB20000E

定義されていないエラーが発生した場合に出力されるメッセージコードです。

原因

対策

定義されていないエラーが発生しました。

エラーメッセージやエラーが発生した処理のヘルプなどを確認してください。

対応するエラー

  • 特になし

 

DB20001E

データベース処理中のエラーに対応するメッセージコードです。

原因

対策

エラーメッセージにより、原因は異なります。

エラーメッセージを確認し、以下のことを行ってください。

  • 下記の「例外メッセージ」に対象のエラーの原因/対策が記述されていないかを確認してください。

  • 使用しているコネクターの制限事項に対象のエラーの原因/対策が記述されていないかを確認してください。

  • 接続先のデータベースのドキュメントなどに対象のエラーに関する情報がないか確認してください。

対応するエラー

  • java.sql.SQLException

  • com.ibm.db2.jcc.b.SqlExceptionなど

 

DB2カテゴリの例外メッセージ

例外名

原因

対策

InputDataNotFoundException

入力データが指定されていません。

入力データを指定する、またはデータフローを引いてください。

InvalidPropertyConfigurationException

<プロパティ名>が指定されていません。

<プロパティ名>が指定されていません。

<プロパティ名>を指定してください。

InvalidPropertyConfigurationException

SQL文が未設定です。

SQL文を指定してください。

InvalidPropertyConfigurationException

書き込み対象カラムが選択されていません。

スキーマ定義書き込み対象が選択されていません。

スキーマ定義書き込み対象を1つ以上選択してください。

InvalidPropertyConfigurationException

読み取り対象カラムが選択されていません。

スキーマ定義読み取り対象が選択されていません。

スキーマ定義読み取り対象を1つ以上選択してください。

InvalidPropertyConfigurationException

テーブル名が未設定です。

テーブル名を指定してください。

java.sql.SQLException

データベースアクセスエラーまたはそのほかのエラーが発生しています。

SQLExceptionのメッセージを確認してください。SQLExceptionのメッセージは各ドライバの仕様に基づいています。SQLExceptionのメッセージにはエラーの原因が出力されている場合があります。

ResourceNotFoundException

リソース定義が見つかりませんでした。名前:[]

接続先が指定されていません。

接続先を指定してください。

ResourceNotFoundException

リソース定義が見つかりませんでした。名前:[<コネクションリソース名>]

接続先で選択されたリソース定義が見つかりません。

接続先で指定したコネクションリソースを確認してください。

com.ibm.db2.jcc.am.SqlNonTransientConnectionException

必須プロパティー "<ホスト名>" が不明なホストです。 ERRORCODE=-4222, SQLSTATE=08001

データベースに接続できません。

コネクションリソースのホスト名を確認してください。

com.ibm.db2.jcc.am.DisconnectNonTransientConnectionException

例外 java.net.ConnectException: サーバー /<ホスト名> へのソケットのオープンでエラーが発生しました。ポート: <ポート番号> メッセージ: Connection refused: connect ERRORCODE=-4499, SQLSTATE=08001

コネクションリソースのポート番号を確認してください。

com.ibm.db2.jcc.am.DisconnectNonTransientException

会話の割り振り解除の原因となる分散プロトコル・エラーのため、実行が失敗しました。

DRDA データ・ストリーム構文エラーが検出されました。 理由: 0x3。 ERRORCODE=-4499, SQLSTATE=58009

接続先の環境を確認してください。

com.ibm.db2.jcc.am.DisconnectNonTransientConnectionException

アプリケーション・サーバーが、接続の確立を拒否しました。データベース <データベース名> へのアクセスが試行されましたが、見つからなかったか、トランザクションをサポートしていません。 ERRORCODE=-4499, SQLSTATE=08004

存在しないデータベースを指定している可能性があります。

コネクションリソースのデータベース名で存在するデータベースを指定してください。

接続の基礎となるソケット、ソケット入力ストリーム、またはソケット出力ストリーム上での操作中に、 通信エラーが発生しました。 エラーのロケーション: Reply.fill() - socketInputStream.read (-1)。 メッセージ: Software caused connection abort: recv failed。 ERRORCODE=-4499, SQLSTATE=08001

com.ibm.db2.jcc.am.SqlInvalidAuthorizationSpecException

接続の許可が失敗しました。理由: ユーザー ID またはパスワードが無効です。 ERRORCODE=-4214, SQLSTATE=28000

ユーザー名またはパスワードが不正です。

コネクションリソースのユーザー名またはパスワードを確認してください。

com.ibm.db2.jcc.am.SqlSyntaxErrorException

DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=<テーブル名>, DRIVER=4.21.29

テーブル名にスペースが挿入されている可能性があります。

テーブル名で指定したテーブル名にスペースが挿入されている場合、テーブル名を引用符で囲ってください。

DB2 SQL Error: SQLCODE=-204, SQLSTATE=42704, SQLERRMC=<テーブル名>, DRIVER=4.21.29

テーブルが存在しません。

テーブル名で存在するテーブルを指定してください。

 

DB2カテゴリの制限事項

サポートする型

本コネクターでサポートする型は以下のとおりです。

型名

サポート

備考

SMALLINT型

 

BIGINT型

 

REAL型

 

DOUBLE型

 

DECIMAL型

 

DATE型

 

TIME型

 

TIMESTAMP型

 

CHAR型

 

CHAR FOR BIT DATA型

 

VARCHAR型

 

VARCHAR FOR BIT DATA型

 

LONG VARCHAR FOR BIT DATA型

 

CLOB型

 

BLOB型

 

GRAPHIC型

 

VARGRAPHIC型

 

LONGVARGRAPHIC型

 

DBCLOB型

 

XML型

Stringとしてデータを扱います。

  • ○:サポートします。

  • △:サポートしますが、制限事項があります。

  • ×:サポートしません。

テーブル読み取り処理

仕様制限

  • テーブル名が引用符で囲われている場合、テーブル名の大文字小文字を区別します。

検索系SQL実行処理

仕様制限

  • ありません。

テーブル書き込み処理

仕様制限

  • CHAR型

    • データベース作成時のデフォルトのコードページが「UTF-8」になります。そのため、文字によっては文字列長が長くなるため、従来と処理結果が変わる可能性があります。たとえば、2バイトで定義されているカラムに"あ"を挿入する場合、3バイトとして扱われるためエラーになります。

  • テーブル名が引用符で囲われている場合、テーブル名の大文字小文字を区別します。

更新系SQL実行処理

仕様制限

  • CHAR型

    • データベース作成時のデフォルトのコードページが「UTF-8」になります。そのため、文字によっては文字列長が長くなるため、従来と処理結果が変わる可能性があります。たとえば、2バイトで定義されているカラムに"あ"を挿入する場合、3バイトとして扱われるためエラーになります。

SQLウィザード(検索系)

仕様制限

  • データベース上のスキーマ名やテーブル名に「.」が含まれるテーブルを扱うことはできません。

  • 結果データの量が大きいと、テスト実行に失敗する場合があります。

  • [実行結果]タブに表示されるレコード件数は最大100件です。

  • 存在しないテーブルがSQL文に含まれる場合、SQL文の再編集を行うことができません。

SQLウィザード(更新系)

仕様制限

  • コネクションリソースがXAリソースの場合、テスト実行をすることはできません。

  • データベース上のスキーマ名やテーブル名に「.」が含まれるテーブルを扱うことはできません。

  • 存在しないテーブルがSQL文に含まれる場合、SQL文の再編集を行うことができません。

  • JDBC Connectorのコネクションリソースで、[トランザクション処理を行う]のチェックを外した場合、テスト実行時にロールバックが行われず、データが更新されます。