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

 

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

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

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

 

SQLAZURE0000E

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

原因

対策

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

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

対応するエラー

  • 特になし

 

SQLAZURE0001E

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

原因

対策

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

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

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

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

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

対応するエラー

  • java.sql.SQLException

  • com.microsoft.sqlserver.jdbc.SQLServerException

 

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

例外名

原因

対策

com.microsoft.sqlserver.jdbc.SQLServerException

Cannot open database "<データベース名>" requested by the login. The login failed.

データベースが不正です。

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

com.microsoft.sqlserver.jdbc.SQLServerException

ホスト <ホスト名>、ポート 1433 への TCP/IP 接続が失敗しました。

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

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

com.microsoft.sqlserver.jdbc.SQLServerException

ホスト <サーバー名>.database.windows.net、ポート 1433 への TCP/IP 接続が失敗しました。エラー: "connect timed out。接続プロパティを調べて、SQL Server のインスタンスがホスト上で実行されていて、ポートへの TCP/IP 接続が許可されており、そのポートへの TCP 接続がファイアウォールにブロックされていないことを確認してください。"。

データベース名またはユーザー名が不正です。

コネクションリソースのデータベース名またはユーザー名を確認してください。また、ユーザー名が「<ユーザー名>@<サーバー名>」形式になっているか確認してください。

com.microsoft.sqlserver.jdbc.SQLServerException

Incorrect syntax near '<テーブル名>'

テーブル名がTransact-SQLの標準識別子の規則にしたがっていない可能性があります。

テーブル名で指定したテーブルを、引用符で囲ってください。

com.microsoft.sqlserver.jdbc.SQLServerException

Invalid object name '<テーブル名>'

テーブル名が不正です。

テーブル名を確認してください。

com.microsoft.sqlserver.jdbc.SQLServerException

Connection reset

ユーザー名が不正です。

コネクションリソースのユーザー名が「<ユーザー名>@<サーバー名>」形式になっているか確認してください。

com.microsoft.sqlserver.jdbc.SQLServerException

Server name cannot be determined. It must appear as the first segment of the server's dns name (servername.database.windows.net). Some libraries do not send the server name, in which case the server name must be included as part of the user name (username@servername). In addition, if both formats are used, the server names must match.

ユーザー名が不正です。

コネクションリソースのユーザー名が「<ユーザー名>@<サーバー名>」形式になっているか確認してください。また、<サーバー名>に正しい値が設定されているか確認してください。

com.microsoft.sqlserver.jdbc.SQLServerException

Login failed for user '<ユーザー名>'

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

コネクションリソースのユーザー名またはパスワードを確認してください。また、ユーザー名が「<ユーザー名>@<サーバー名>」形式になっているか確認してください。

InputDataNotFoundException

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

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

InvalidPropertyConfigurationException

SQL文が未設定です。

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

InvalidPropertyConfigurationException

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

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

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

InvalidPropertyConfigurationException

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

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

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

InvalidPropertyConfigurationException

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

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

InvalidPropertyConfigurationException

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

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

java.sql.SQLException

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

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

メッセージの詳細については、各データベースベンダーに問い合わせてください。

ResourceNotFoundException

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

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

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

ResourceNotFoundException

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

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

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

com.microsoft.sqlserver.jdbc.SQLServerException

Login failed for user '<ユーザー名>'

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

コネクションリソースのユーザー名またはパスワードを確認してください。また、ユーザー名が「<ユーザー名>@<サーバー名>」形式になっているか確認してください。

ホスト <サーバー名>.database.windows.net、ポート 1433 への TCP/IP 接続が失敗しました。エラー: "connect timed out。接続プロパティを調べて、SQL Server のインスタンスがホスト上で実行されていて、ポートへの TCP/IP 接続が許可されており、そのポートへの TCP 接続がファイアウォールにブロックされていないことを確認してください。"。

データベース名またはユーザー名が不正です。

コネクションリソースのデータベース名またはユーザー名を確認してください。また、ユーザー名が「<ユーザー名>@<サーバー名>」形式になっているか確認してください。

Connection reset

ユーザー名が不正です。

コネクションリソースのユーザー名が「<ユーザー名>@<サーバー名>」形式になっているか確認してください。

Server name cannot be determined. It must appear as the first segment of the server's dns name (servername.database.windows.net). Some libraries do not send the server name, in which case the server name must be included as part of the user name (username@servername). In addition, if both formats are used, the server names must match.

ユーザー名が不正です。

コネクションリソースのユーザー名が「<ユーザー名>@<サーバー名>」形式になっているか確認してください。また、<サーバー名>に正しい値が設定されているか確認してください。

ホスト <ホスト名>、ポート 1433 への TCP/IP 接続が失敗しました。

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

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

Cannot open database "<データベース名>" requested by the login. The login failed.

データベースが不正です。

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

Invalid object name '<テーブル名>'

テーブル名が不正です。

テーブル名を確認してください。

Incorrect syntax near '<テーブル名>'

テーブル名がTransact-SQLの標準識別子の規則にしたがっていない可能性があります。

テーブル名で指定したテーブルを、引用符で囲ってください。

 

SQLAZUREカテゴリの制限事項

 

サポートする型

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

型名

サポート

備考

BIGINT型

 

INT型

 

SMALLINT型

 

TINYINT型

 

BIT型

 

NUMERIC型

 

DECIMAL型

 

MONEY型

 

SMALLMONEY型

 

FLOAT型

 

REAL型

 

TIME型

×

 

DATE型

×

 

SMALLDATETIME型

 

DATETIME型

 

DATETIME2型

×

 

DATETIMEOFFSET型

×

 

CHAR型

 

VARCHAR型

 

NCHAR型

 

NVARCHAR型

 

TEXT型

 

NTEXT型

 

BINARY型

 

VARBINARY型

 

IMAGE型

 

VARCHAR(MAX)型

 

NVARCHAR(MAX)型

 

VARBINARY(MAX)型

 

XML型

 

SQL_VARIANT型

×

 

UNIQUEIDENTIFIER型

×

 

  • ○:サポートします。

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

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

 

全処理共通

仕様制限

  • 以下の文字が含まれるデータベース名のデータベースを指定することはできません。

    = 備考 =

    詳細については、データベースベンダーに問い合わせてください。

    • 「{」

    • 「;」

  • 同一トランザクション内で本コネクターの複数の処理を実行する場合、トランザクション内で5分を経過すると、Azure SQL Databaseの仕様制限により接続がタイムアウトすることがあります。

注意事項

  • Azure SQL Databaseと本コネクターとの通信は、SSLを使用します。

  • Azure SQL Databaseにおけるサーバー群の再構成により接続の確立に失敗することがあります。この場合、一定時間再接続を繰り返します。

 

テーブル読み取り処理

仕様制限

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

    • dboスキーマ以外のスキーマに存在しているテーブルは、「<スキーマ名>.<テーブル名>」と表示されます。

  • テーブル名が引用符で囲われた状態でもテーブル名の大文字小文字は区別しません。

 

検索系SQL実行処理

仕様制限

ありません。

注意事項

  • byte[]型として扱うスキーマは、バイナリ形式として出力されます。

 

テーブル書き込み処理

仕様制限

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

    • dboスキーマ以外のスキーマに存在しているテーブルは、「<スキーマ名>.<テーブル名>」と表示されます。

  • DATETIME型

    • ミリ秒を指定してデータを挿入する場合、ミリ秒の単位の値が丸められます。値は0ミリ秒、3ミリ秒、7ミリ秒の単位になるように丸められます。

      丸められた結果

      01/01/98 23:59:59.999

      1998-01-02 00:00:00.000

      01/01/98 23:59:59.995、01/01/98 23:59:59.996、01/01/98 23:59:59.997

      または01/01/98 23:59:59.998

      1998-01-01 23:59:59.997

      01/01/98 23:59:59.992, 01/01/98 23:59:59.993, 01/01/98 23:59:59.994

      1998-01-01-23:59:59.993

      01/01/98 23:59:59.990 または 01/01/98 23:59:59.991

      1998-01-01 23:59:59.990

  • CHAR型、VARCHAR型、TEXT型、VARCHAR(MAX)型

    • データにマルチバイト文字が含まれる場合、文字化けが発生します。

  • テーブル名が引用符で囲われた状態でもテーブル名の大文字小文字は区別しません。

 

更新系SQL実行処理

仕様制限

  • DATETIME型

    • ミリ秒を指定してデータを挿入する場合、ミリ秒の単位の値が丸められます。値は0ミリ秒、3ミリ秒、7ミリ秒の単位になるように丸められます。

      丸められた結果

      01/01/98 23:59:59.999

      1998-01-02 00:00:00.000

      01/01/98 23:59:59.995、01/01/98 23:59:59.996、01/01/98 23:59:59.997

      または01/01/98 23:59:59.998

      1998-01-01 23:59:59.997

      01/01/98 23:59:59.992, 01/01/98 23:59:59.993, 01/01/98 23:59:59.994

      1998-01-01-23:59:59.993

      01/01/98 23:59:59.990 または 01/01/98 23:59:59.991

      1998-01-01 23:59:59.990

  • CHAR型、VARCHAR型、TEXT型、VARCHAR(MAX)型

    • データにマルチバイト文字が含まれる場合、文字化けが発生します。

 

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

仕様制限

  • DATETIME型

    • ミリ秒を指定してデータを挿入する場合、ミリ秒の単位の値が丸められます。値は0ミリ秒、3ミリ秒、7ミリ秒の単位になるように丸められます。

      丸められた結果

      01/01/98 23:59:59.999

      1998-01-02 00:00:00.000

      01/01/98 23:59:59.995、01/01/98 23:59:59.996、01/01/98 23:59:59.997

      または01/01/98 23:59:59.998

      1998-01-01 23:59:59.997

      01/01/98 23:59:59.992, 01/01/98 23:59:59.993, 01/01/98 23:59:59.994

      1998-01-01-23:59:59.993

      01/01/98 23:59:59.990 または 01/01/98 23:59:59.991

      1998-01-01 23:59:59.990

  • CHAR型、VARCHAR型、TEXT型、VARCHAR(MAX)型

    • データにマルチバイト文字が含まれる場合、文字化けが発生します。

  • XML型

    • プロシージャの引数にXML型が含まれている場合、実行できません。

  • SQL_VARIANT型

    • プロシージャの引数にSQL_VARIANT型が含まれている場合、実行できません。

  • UNIQUEIDENTIFIER型

    • プロシージャの引数にUNIQUEIDENTIFIER型が含まれている場合、実行できません。

  • 名前を引用符で囲う必要があるプロシージャは使用できない場合があります。

  • 出力パラメータを使用するプロシージャを指定した場合、入力パラメータ設定にも出力パラメータと同様のパラメータが表示され、入力データが必要になります。