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

 

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

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

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

 

ORACLE0000E

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

原因

対策

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

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

対応するエラー

  • 特になし

 

ORACLE0001E

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

原因

対策

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

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

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

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

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

対応するエラー

  • java.sql.SQLException

  • java.sql.SQLRecoverableException

  • java.sql.SQLSyntaxErrorException

 

ORACLE0002E

Oracle XA接続で発生するエラーに対応するメッセージコードです。

原因

対策

トランザクションが有効なスクリプトで、同一のデータベースを参照する複数のXAコネクションリソースを使用している可能性があります。

Oracle XA接続による複数の処理で同一のデータベースを参照する場合は、共通のコネクションリソースを使用してください。

対応するエラー

  • oracle.jdbc.xa.OracleXAException

 

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

例外名

原因

対策

InputDataNotFoundException

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

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

InvalidPropertyConfigurationException

SQL文が未設定です。

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

InvalidPropertyConfigurationException

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

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

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

InvalidPropertyConfigurationException

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

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

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

InvalidPropertyConfigurationException

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

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

InvalidPropertyConfigurationException

プロシージャが未設定です。

プロシージャを指定してください。

InvalidPropertyConfigurationException

テーブル名が定義されていません。

テーブル名が定義されていません。

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

java.sql.SQLException

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

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

ResourceNotFoundException

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

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

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

ResourceNotFoundException

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

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

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

java.sql.SQLException

ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。

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

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

Listener refused the connection with the following error:

ORA-12505, TNS:listener does not currently know of SID given in connect descriptor

SIDが不正です。

コネクションリソースのSIDまたはURLを確認してください。

java.sql.SQLRecoverableException

IOエラー: The Network Adapter could not establish the connection

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

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

java.sql.SQLSyntaxErrorException

ORA-00942: 表またはビューが存在しません。

テーブルまたはビューが存在しないか、テーブルまたはビューの名前が、引用符で囲われていない可能性があります。

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

また、テーブル名で指定したテーブルまたはビューの名前が、引用符で囲われているか確認してください。

oracle.jdbc.xa.OracleXAException

トランザクションが有効なスクリプトで、同一のデータベースを参照する複数のXAコネクションリソースを使用している可能性があります。

Oracle XA接続による複数の処理で同一のデータベースを参照する場合は、共通のコネクションリソースを使用してください。

Oracleカテゴリの制限事項

サポートする型

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

型名

サポート

備考

CHAR型

 

NCHAR型

 

VARCHAR2型

 

NVARCHAR2型

 

LONG型

 

NUMBER型

 

FLOAT型

 

DATE型

 

TIMESTAMP型

 

TIMESTAMP WITH TIME ZONE型

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

TIMESTAMP WITH LOCAL TIME ZONE型

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

RAW型

 

LONG RAW型

 

BLOB型

 

CLOB型

 

NCLOB型

 

  • ○:サポートします。

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

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

全処理共通

仕様制限

  • テーブル一覧の表示について

    • コネクションリソースのユーザー名に指定されたユーザーのスキーマに属するテーブルが表示されます。

    • シノニムは表示されませんが、テーブル名SQL文に直接入力することは可能です。

テーブル読み取り処理

仕様制限

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

  • フェッチサイズのデフォルト値は「100」です。

検索系SQL実行処理

仕様制限

  • NUMBER型、FLOAT型

    • クエリ結果のPrecisionが0の場合、BigDecimalとしてデータを扱います。

      たとえば、SUM関数で指定している列にPrecisionが設定されていても結果として0が返ってくるので、SUM関数の結果はBigDecimalとしてデータを扱います。

  • ファンクションを使用したSQL文について

    • SQLファンクションを使用したSQL文は実行可能です。

    • ユーザー定義ファンクションを使用したSQL文は実行可能ですが、ファンクションで定義されているOUTパラメータの値は受け取ることはできません。

  • フェッチサイズのデフォルト値は「100」です。

テーブル書き込み処理

仕様制限

  • CHAR型

    • 更新を行う際、スキーマ定義/キーにチェックを入れた列がCHAR型の場合は、入力データのキー値が同じサイズにパディングされている必要があります。

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

更新系SQL実行処理

仕様制限

  • CHAR型

    • UPDATE文のWHERE句にCHAR型の列が指定されていて、その列の値をSQLパラメータで取得する場合は、入力データのキー値が同じサイズにパディングされている必要があります。

  • ファンクションを使用したSQL文について

    • SQLファンクションを使用したSQL文は実行可能です。

    • ユーザー定義ファンクションを使用したSQL文は実行可能ですが、ファンクションで定義されているOUTパラメータの値は受け取ることはできません。

ストアドプロシージャ実行処理

仕様制限

  • CHAR型

    • CHAR型のOUTパラメータには、不要な半角スペースが付加される場合があります。

  • プロシージャの表記について

    • パッケージ内に定義されているプロシージャは [パッケージ名].[プロシージャ名] で表記します。

    • パッケージ名にドット(.)が含まれている場合、パッケージ名をダブルクォーテーション(")で囲います。

      例:パッケージ「SAMPLE.PACKAGE」で定義されてるプロシージャ「PROCEDURE」の場合

      • "SAMPLE.PACKAGE".PROCEDURE

    • プロシージャ名にドット(.)が含まれている場合、プロシージャ名をダブルクォーテーション(")で囲います。

      例:パッケージ「PACKAGE」で定義されてるプロシージャ「SAMPLE.PROCEDURE」の場合

      • PACKAGE."SAMPLE.PROCEDURE"

  • プロシージャにストアドファンクションを指定した場合、RETURN句の戻り値を出力パラメータとして取得できず、スクリプト実行時に以下のようなエラーが発生し、処理が失敗する場合があります。

    • [exec_procedure]の処理に失敗しました。原因:[java.sql.SQLException: ORA-06550: '<プロシージャ>'がプロシージャではないか、または未定義です。]

  • BOOLEAN型などのPL/SQLの型には対応していません。

  • シノニムには対応していません。

  • コネクションリソースのユーザー名に指定されたユーザーのスキーマと異なるスキーマのプロシージャは使用できません。

SQLウィザード(検索系)

仕様制限

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

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

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

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

SQLウィザード(更新系)

仕様制限

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

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

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

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