- すべてのスーパー・インタフェース:
AutoCloseable
,Wrapper
public interface Connection extends Wrapper, AutoCloseable
特定のデータベースとの接続(セッション)を表現します。 接続のコンテキスト内でSQL文が実行され結果が返されます。
Connection
オブジェクト中のデータベースは、表、サポートしているSQL文法、ストアド・プロシージャ、およびこの接続の能力などについての情報を提供します。 この情報は、getMetaData
メソッドで取得できます。
注: JDBCアプリケーションでConnection
を構成するときは、setAutoCommit
やsetTransactionIsolation
などの適切なConnection
メソッドを使用するようにしてください。 利用できるJDBCのメソッドがある場合は、アプリケーションでSQLコマンドを直接呼び出して接続の構成を変更しないようにしてください。 各文を実行後、デフォルトでは、Connection
オブジェクトは自動コミット・モードになり、自動的に変更をコミットします。 自動コミット・モードが無効にされている場合、変更をコミットするにはcommit
メソッドを明示的に呼び出す必要があります。そうしないとデータベースの変更は保存されません。
JDBC 2.1コアAPIを使用して生成された新しいConnection
オブジェクトには、このオブジェクトに関連する、初期状態が空の型マップがあります。 ユーザーはこの型マップのUDTにカスタム・マッピングを入力できます。 ResultSet.getObject
メソッドによってデータ・ソースからUDTが取得されると、getObject
メソッドは接続の型マップをチェックして、そのUDTにエントリがあるかどうかを調べます。 エントリがある場合、getObject
メソッドは指示されたクラスにUDTをマッピングします。 エントリがない場合、UDTは標準マッピングを使用してマッピングされます。
ユーザーはjava.util.Map
オブジェクトとなる新しい型マップを作成し、それにエントリを作成し、カスタム・マッピングを実行できるjava.sql
メソッドにそのエントリを渡すことができます。 この場合、メソッドは、接続に関連した型マップではなく指定された型マップを使用します。
たとえば、次のコード・フラグメントは、SQL型ATHLETES
がJavaプログラミング言語のAthletes
クラスにマッピングされることを指定します。 コード・フラグメントはConnection
オブジェクトcon
の型マップを取得し、それにエントリを挿入し、その新しいエントリでその型マップを接続の型マップとして設定します。
java.util.Map map = con.getTypeMap(); map.put("mySchemaName.ATHLETES", Class.forName("Athletes")); con.setTypeMap(map);
- 導入されたバージョン:
- 1.1
- 関連項目:
DriverManager.getConnection(java.lang.String, java.util.Properties)
,Statement
,ResultSet
,DatabaseMetaData
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static int
TRANSACTION_NONE
トランザクションがサポートされていないことを示す定数です。static int
TRANSACTION_READ_COMMITTED
ダーティ読込みは抑制され、繰返し不可の読み込みおよびファントム読込みが起こることを示す定数です。static int
TRANSACTION_READ_UNCOMMITTED
ダーティ読み込み、繰返し不可の読み込み、およびファントム読込みが起こることを示す定数です。static int
TRANSACTION_REPEATABLE_READ
ダーティ読み込みおよび繰返し不可の読込みは抑制され、ファントム読込みが起こることを示す定数です。static int
TRANSACTION_SERIALIZABLE
ダーティ読み込み、繰返し不可の読み込み、およびファントム読込みが抑制されることを示す定数です。 -
メソッドのサマリー
修飾子と型 メソッド 説明 void
abort(Executor executor)
オープン接続を終了します。default void
beginRequest()
独立した作業単位であるリクエストがこの接続から始まっていることを運転手に知らせます。void
clearWarnings()
このConnection
オブジェクトに関して報告されたすべての警告をクリアします。void
close()
自動的な解除を待たずに、ただちにこのConnection
オブジェクトのデータベースとJDBCリソースを解除します。void
commit()
直前のコミット/ロールバック以降に行われた変更をすべて永続的なものにし、このConnection
オブジェクトが現在保持するデータベース・ロックをすべて解除します。Array
createArrayOf(String typeName, Object[] elements)
Arrayオブジェクトを生成するファクトリ・メソッドです。Blob
createBlob()
Blob
インタフェースを実装しているオブジェクトを構築します。Clob
createClob()
Clob
インタフェースを実装しているオブジェクトを構築します。NClob
createNClob()
NClob
インタフェースを実装しているオブジェクトを構築します。SQLXML
createSQLXML()
SQLXML
インタフェースを実装しているオブジェクトを構築します。Statement
createStatement()
SQL文をデータベースに送るためのStatement
オブジェクトを生成します。Statement
createStatement(int resultSetType, int resultSetConcurrency)
指定された型と並行処理でResultSet
オブジェクトを生成するStatement
オブジェクトを生成します。Statement
createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability)
指定された型、並行処理、および保持機能でResultSet
オブジェクトを生成するStatement
オブジェクトを生成します。Struct
createStruct(String typeName, Object[] attributes)
Structオブジェクトを生成するファクトリ・メソッドです。default void
endRequest()
独立した作業単位であるリクエストが完了したことを運転手に知らせます。boolean
getAutoCommit()
このConnection
オブジェクトの現在の自動コミット・モードを取得します。String
getCatalog()
このConnection
オブジェクトの現在のカタログ名を取得します。Properties
getClientInfo()
ドライバでサポートされる各クライアント情報プロパティの名前と現在の値が含まれるリストを返します。String
getClientInfo(String name)
名前で指定されたをクライアント情報プロパティの値を返します。int
getHoldability()
このConnection
オブジェクトを使用して生成されたResultSet
オブジェクトの現在の保持機能を取得します。DatabaseMetaData
getMetaData()
このConnection
オブジェクトが接続を表すデータベースに関するメタデータを格納するDatabaseMetaData
オブジェクトを取得します。int
getNetworkTimeout()
ドライバがデータベース要求の完了を待つミリ秒数を取得します。String
getSchema()
このConnection
オブジェクトの現在のスキーマ名を取得します。int
getTransactionIsolation()
このConnection
オブジェクトの現在のトランザクション遮断レベルを取得します。Map<String,Class<?>>
getTypeMap()
このConnection
オブジェクトに関連付けられたMap
オブジェクトを取得します。SQLWarning
getWarnings()
このConnection
オブジェクトに関する呼出しによって報告される最初の警告を取得します。boolean
isClosed()
このConnection
オブジェクトがクローズされているかどうかを取得します。boolean
isReadOnly()
このConnection
オブジェクトが読込み専用モードかどうかを取得します。boolean
isValid(int timeout)
接続がクローズされておらず、まだ有効である場合はtrueを返します。String
nativeSQL(String sql)
指定されたSQL文をシステムの本来のSQL文法に変換します。CallableStatement
prepareCall(String sql)
データベースのストアド・プロシージャを呼び出すためのCallableStatement
オブジェクトを生成します。CallableStatement
prepareCall(String sql, int resultSetType, int resultSetConcurrency)
指定された型と並行処理でResultSet
オブジェクトを生成するCallableStatement
オブジェクトを生成します。CallableStatement
prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
指定された型と並行処理でResultSet
オブジェクトを生成するCallableStatement
オブジェクトを生成します。PreparedStatement
prepareStatement(String sql)
パラメータ付きSQL文をデータベースに送るためのPreparedStatement
オブジェクトを生成します。PreparedStatement
prepareStatement(String sql, int autoGeneratedKeys)
自動生成キーを取得する機能を持つデフォルトのPreparedStatement
オブジェクトを生成します。PreparedStatement
prepareStatement(String sql, int[] columnIndexes)
指定された配列によって指定された自動生成キーを返す機能を持つデフォルトのPreparedStatement
オブジェクトを生成します。PreparedStatement
prepareStatement(String sql, int resultSetType, int resultSetConcurrency)
指定された型と並行処理でResultSet
オブジェクトを生成するPreparedStatement
オブジェクトを生成します。PreparedStatement
prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
指定された型、並行処理、および保持機能でResultSet
オブジェクトを生成するPreparedStatement
オブジェクトを生成します。PreparedStatement
prepareStatement(String sql, String[] columnNames)
指定された配列によって指定された自動生成キーを返す機能を持つデフォルトのPreparedStatement
オブジェクトを生成します。void
releaseSavepoint(Savepoint savepoint)
現在のトランザクションから指定されたSavepoint
オブジェクトと以降のSavepoint
オブジェクトを削除します。void
rollback()
現在のトランザクションにおけるすべての変更を取り消し、現在このConnection
オブジェクトが保持しているすべてのデータベース・ロックを解除します。void
rollback(Savepoint savepoint)
指定されたSavepoint
オブジェクトが設定されたあとに行われたすべての変更を元に戻します。void
setAutoCommit(boolean autoCommit)
この接続の自動コミット・モードを指定された状態に設定します。void
setCatalog(String catalog)
このConnection
オブジェクトのデータベースに作業のためのサブスペースを選択するために、カタログ名を設定します。void
setClientInfo(String name, String value)
nameで指定されたクライアント情報プロパティの値を、valueで指定された値に設定します。void
setClientInfo(Properties properties)
接続のクライアント情報プロパティの値を設定します。void
setHoldability(int holdability)
このConnection
オブジェクトを使用して生成されたResultSet
オブジェクトのデフォルトの保持機能を指定された保持機能へ変更します。void
setNetworkTimeout(Executor executor, int milliseconds)
Connection
またはConnection
から作成されたオブジェクトが、データベースが任意の1つの要求に応答するのを待つ最大期間を設定します。void
setReadOnly(boolean readOnly)
ドライバがデータベースの最適化を有効にできるように、ヒントとして、この接続を読込み専用モードに設定します。Savepoint
setSavepoint()
現在のトランザクションで名前のないセーブポイントを作成し、それを表す新しいSavepoint
オブジェクトを返します。Savepoint
setSavepoint(String name)
現在のトランザクションで指定された名前のセーブポイントを作成し、それを表す新しいSavepoint
オブジェクトを返します。void
setSchema(String schema)
アクセスするスキーマ名を設定します。default void
setShardingKey(ShardingKey shardingKey)
このConnectionで使用するshardingKeyを指定default void
setShardingKey(ShardingKey shardingKey, ShardingKey superShardingKey)
このConnectionで使用するshardingKeyおよびsuperShardingKeyを指定default boolean
setShardingKeyIfValid(ShardingKey shardingKey, int timeout)
この接続のシャーディング・キーを設定および検証します。default boolean
setShardingKeyIfValid(ShardingKey shardingKey, ShardingKey superShardingKey, int timeout)
この接続のシャーディング・キーを設定および検証します。void
setTransactionIsolation(int level)
このConnection
オブジェクトのトランザクション遮断レベルを指定されたものに変更することを試みます。void
setTypeMap(Map<String,クラス<?>> map)
このConnection
オブジェクトの型マップとして、指定されたTypeMap
オブジェクトをインストールします。
-
フィールド詳細
-
TRANSACTION_NONE
static final int TRANSACTION_NONEトランザクションがサポートされていないことを示す定数です。- 関連項目:
- 定数フィールド値
-
TRANSACTION_READ_UNCOMMITTED
static final int TRANSACTION_READ_UNCOMMITTEDダーティ読み込み、繰返し不可の読み込み、およびファントム読込みが起こることを示す定数です。 このレベルでは1つのトランザクションによって変更された行を、その行の変更がコミットされる前に、ほかのトランザクションによって読み取ることがあります(ダーティ読み込み)。 変更がロールバックされると、2番目のトランザクションは無効な行を取り出すことになります。- 関連項目:
- 定数フィールド値
-
TRANSACTION_READ_COMMITTED
static final int TRANSACTION_READ_COMMITTEDダーティ読込みは抑制され、繰返し不可の読み込みおよびファントム読込みが起こることを示す定数です。 このレベルは、コミットされていない変更がある行をトランザクションが読み取ることを禁止するだけです。- 関連項目:
- 定数フィールド値
-
TRANSACTION_REPEATABLE_READ
static final int TRANSACTION_REPEATABLE_READダーティ読み込みおよび繰返し不可の読込みは抑制され、ファントム読込みが起こることを示す定数です。 このレベルでは、コミットされていない変更がある行をトランザクションが読み取ること、および1つのトランザクションがある行を読み込み、2番目のトランザクションがその行を変更した場合に、最初のトランザクションがその行を読込みし直したときに2度目は異なる値を取得するという状況が禁止されます(繰返し不可の読み込み)。- 関連項目:
- 定数フィールド値
-
TRANSACTION_SERIALIZABLE
static final int TRANSACTION_SERIALIZABLEダーティ読み込み、繰返し不可の読み込み、およびファントム読込みが抑制されることを示す定数です。 このレベルには、TRANSACTION_REPEATABLE_READ
での禁止に加え、1つのトランザクションがWHERE
条件を満たすすべての行を読み出し、2番目のトランザクションがWHERE
条件を満たす行を挿入したあとに、最初のトランザクションが同一の条件で読込みし直した場合に、2番目の読込みでは追加された「ファントム」行を取り出すという状況が禁止されます。- 関連項目:
- 定数フィールド値
-
-
メソッドの詳細
-
createStatement
Statement createStatement() throws SQLExceptionSQL文をデータベースに送るためのStatement
オブジェクトを生成します。 パラメータなしのSQL文は通常、Statement
オブジェクトを使用して実行されます。 同じSQL文が多数回実行される場合は、PreparedStatement
オブジェクトを使用する方が効率的なことがあります。返される
Statement
オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY
の型で、CONCUR_READ_ONLY
の並行処理レベルを持ちます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- 戻り値:
- 新しいデフォルトの
Statement
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合
-
prepareStatement
PreparedStatement prepareStatement(String sql) throws SQLExceptionパラメータ付きSQL文をデータベースに送るためのPreparedStatement
オブジェクトを生成します。INパラメータ付きまたはINパラメータなしのSQL文は、プリコンパイルして、
PreparedStatement
オブジェクトに格納できます。 その後、このオブジェクトは、この文を複数回効率的に実行するために使用できます。注: このメソッドは、プリコンパイルが効果のある、パラメータ付きSQL文を処理するために最適化されています。 ドライバが、プリコンパイルをサポートしている場合、
prepareStatement
メソッドは、その文をプリコンパイル用としてデータベースに送ります。 ドライバによっては、プリコンパイルをサポートしていないものがあります。 この場合、PreparedStatement
オブジェクトが実行されるまで、文はデータベースに送られません。 これはユーザーに直接的な影響はありませんが、どのメソッドが、どのSQLException
オブジェクトをスローするかに関して影響があります。返される
PreparedStatement
オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY
の型で、CONCUR_READ_ONLY
の並行処理レベルを持ちます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- パラメータ:
sql
- 次を含めることができるSQL文: 1つ以上の'?' INパラメータ・プレースホルダー- 戻り値:
- プリコンパイルされたSQL文を含む新しいデフォルトの
PreparedStatement
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合
-
prepareCall
CallableStatement prepareCall(String sql) throws SQLExceptionデータベースのストアド・プロシージャを呼び出すためのCallableStatement
オブジェクトを生成します。CallableStatement
オブジェクトは、そのINとOUTパラメータを設定するメソッドとストアド・プロシージャの呼出しを実行するメソッドを提供します。注: このメソッドは、ストアド・プロシージャ呼出し文を処理するために最適化されています。 ドライバによっては、
prepareCall
メソッドが実行されるときにデータベースに呼出し文を送るものがあります。その他のドライバは、CallableStatement
オブジェクトが実行されるまで待ちます。 これはユーザーに直接的な影響はありませんが、どのメソッドが特定のSQLExceptionをスローするかに関して影響があります。返される
CallableStatement
オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY
の型で、CONCUR_READ_ONLY
の並行処理レベルを持ちます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- パラメータ:
sql
- 1つ以上の「?」パラメータ・プレースホルダーを含めることができるSQL文。 通常この文は、JDBC呼出しのエスケープ構文を使用して指定される- 戻り値:
- プリコンパイルされたSQL文を含む新しいデフォルトの
CallableStatement
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合
-
nativeSQL
String nativeSQL(String sql) throws SQLException指定されたSQL文をシステムの本来のSQL文法に変換します。 ドライバは、送信前にJDBC SQL文法をシステムの本来のSQL文法に変換できます。 このメソッドは、ドライバが送る文のシステム本来の形式を返します。- パラメータ:
sql
- 1つ以上の「?」パラメータ・プレースホルダーを含めることができるSQL文- 戻り値:
- この文の元のフォーム
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合
-
setAutoCommit
void setAutoCommit(boolean autoCommit) throws SQLExceptionこの接続の自動コミット・モードを指定された状態に設定します。 接続が自動コミット・モードの場合、そのすべてのSQL文は実行され、個別のトランザクションとしてコミットされます。 そうでない場合、そのSQL文は、commit
メソッドまたはrollback
メソッドへの呼出しによって終了されるトランザクションにグループ化されます。 デフォルトでは、新しい接続は自動コミット・モードです。コミットは、文が完了すると発生します。 文が完了するタイミングは、SQL文の種類によって異なります。
- DML文(INSERT文、UPDATE文、またはDELETE文、DDL文など)の場合、文は実行を終了するとすぐに完了します。
- Select文の場合、文は関連する結果セットが閉じられると完了します。
CallableStatement
オブジェクトの場合、または複数の結果を返す文の場合、文は関連するすべての結果セットが閉じられて、すべての更新カウントと出力パラメータが取得されると完了します。
注: トランザクションの途中でこのメソッドが呼び出され、自動コミット・モードが変更されると、そのトランザクションはコミットされます。
setAutoCommit
が呼び出され、自動コミット・モードが変更されないと、呼出しによる操作は行われません。- パラメータ:
autoCommit
- 自動コミット・モードを有効にする場合はtrue
、無効にする場合はfalse
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、分散トランザクションに関係している間にsetAutoCommit(true)が呼び出された場合、またはこのメソッドがクローズされた接続について呼び出された場合- 関連項目:
getAutoCommit()
-
getAutoCommit
boolean getAutoCommit() throws SQLExceptionこのConnection
オブジェクトの現在の自動コミット・モードを取得します。- 戻り値:
- この
Connection
オブジェクトの現在の自動コミット・モードの状態 - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 関連項目:
setAutoCommit(boolean)
-
commit
void commit() throws SQLException直前のコミット/ロールバック以降に行われた変更をすべて永続的なものにし、このConnection
オブジェクトが現在保持するデータベース・ロックをすべて解除します。 このメソッドは自動コミット・モードが無効になっているときしか使用できません。- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、またはこのConnection
オブジェクトが自動コミット・モードである場合- 関連項目:
setAutoCommit(boolean)
-
rollback
void rollback() throws SQLException現在のトランザクションにおけるすべての変更を取り消し、現在このConnection
オブジェクトが保持しているすべてのデータベース・ロックを解除します。 このメソッドは自動コミット・モードが無効になっているときしか使用できません。- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、またはこのConnection
オブジェクトが自動コミット・モードである場合- 関連項目:
setAutoCommit(boolean)
-
close
void close() throws SQLException自動的な解除を待たずに、ただちにこのConnection
オブジェクトのデータベースとJDBCリソースを解除します。すでにクローズされた
Connection
オブジェクトでclose
メソッドを呼び出すと、操作は行われません。close
メソッドの呼出し前に、アプリケーションでアクティブなトランザクションを明示的にコミットまたはロールバックすることを強くお薦めします。close
メソッドが呼び出され、かつアクティブなトランザクションが存在する場合、その結果は実装で定義されたものになります。- 定義:
close
、インタフェース:AutoCloseable
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合
-
isClosed
boolean isClosed() throws SQLExceptionこのConnection
オブジェクトがクローズされているかどうかを取得します。 接続は、close
メソッドが呼び出されるか、特定の致命的エラーが発生した場合にクローズされます。 このメソッドは、Connection.close
メソッドが呼び出されたあとに呼び出された場合にだけtrue
を返すことが保証されています。このメソッドは通常、データベースへの接続が有効か無効かを判定するために呼び出すことはできません。 一般のクライアントでは、操作を実行したときにスローされる例外をキャッチすることにより、接続が無効であると判定します。
- 戻り値:
- この
Connection
オブジェクトがクローズされている場合はtrue
、まだオープンの状態の場合はfalse
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合
-
getMetaData
DatabaseMetaData getMetaData() throws SQLExceptionこのConnection
オブジェクトが接続を表すデータベースに関するメタデータを格納するDatabaseMetaData
オブジェクトを取得します。 メタデータは、データベースの表、サポートしているSQL文法、ストアド・プロシージャ、およびこの接続の能力などについての情報を含んでいます。- 戻り値:
- この
Connection
オブジェクトのDatabaseMetaData
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合
-
setReadOnly
void setReadOnly(boolean readOnly) throws SQLExceptionドライバがデータベースの最適化を有効にできるように、ヒントとして、この接続を読込み専用モードに設定します。注: トランザクションの途中では、このメソッドを呼び出すことはできません。
- パラメータ:
readOnly
-true
の場合は読込み専用モードを使用可能にし、false
の場合は使用不可にする- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続について呼び出された場合、またはこのメソッドがトランザクション中に呼び出された場合
-
isReadOnly
boolean isReadOnly() throws SQLExceptionこのConnection
オブジェクトが読込み専用モードかどうかを取得します。- 戻り値:
- この
Connection
オブジェクトが読込み専用モードの場合はtrue
、そうでない場合はfalse
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合
-
setCatalog
void setCatalog(String catalog) throws SQLExceptionこのConnection
オブジェクトのデータベースに作業のためのサブスペースを選択するために、カタログ名を設定します。ドライバがカタログをサポートしていない場合は、この要求を無視します。
setCatalog
の呼出しは、前に作成または準備されたStatement
オブジェクトには影響を与えません。Connection
メソッドprepareStatement
またはprepareCall
が呼び出されたときにDBMS準備操作がただちに実行されるかどうかは、実装で定義されます。 移植性を最大限にするには、Statement
の作成または準備の前にsetCatalog
を呼び出す必要があります。- パラメータ:
catalog
- 作業のためのカタログ名。カタログは、このConnection
オブジェクトのデータベースのサブスペース- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 関連項目:
getCatalog()
-
getCatalog
String getCatalog() throws SQLExceptionこのConnection
オブジェクトの現在のカタログ名を取得します。- 戻り値:
- 現在のカタログ名。存在しない場合は
null
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 関連項目:
setCatalog(java.lang.String)
-
setTransactionIsolation
void setTransactionIsolation(int level) throws SQLExceptionこのConnection
オブジェクトのトランザクション遮断レベルを指定されたものに変更することを試みます。 指定できるトランザクション遮断レベルの定数は、Connection
インタフェースで定義されています。注: トランザクションの途中でこのメソッドが呼び出されると、その結果は実装で定義されたものになります。
- パラメータ:
level
- 次のConnection
定数。Connection.TRANSACTION_READ_UNCOMMITTED
、Connection.TRANSACTION_READ_COMMITTED
、Connection.TRANSACTION_REPEATABLE_READ
、またはConnection.TRANSACTION_SERIALIZABLE
のいずれかです。Connection.TRANSACTION_NONE
はトランザクションがサポートされていないことを指定するので使用できない。- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータがConnection
定数のどれでもない場合- 関連項目:
DatabaseMetaData.supportsTransactionIsolationLevel(int)
,getTransactionIsolation()
-
getTransactionIsolation
int getTransactionIsolation() throws SQLExceptionこのConnection
オブジェクトの現在のトランザクション遮断レベルを取得します。- 戻り値:
- 現在のトランザクション遮断レベル。次の定数のうちの1つ。
Connection.TRANSACTION_READ_UNCOMMITTED
、Connection.TRANSACTION_READ_COMMITTED
、Connection.TRANSACTION_REPEATABLE_READ
、Connection.TRANSACTION_SERIALIZABLE
、またはConnection.TRANSACTION_NONE
。 - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 関連項目:
setTransactionIsolation(int)
-
getWarnings
SQLWarning getWarnings() throws SQLExceptionこのConnection
オブジェクトに関する呼出しによって報告される最初の警告を取得します。 2つ以上の警告がある場合、後続の警告は最初の警告にチェーンされ、直前に取得された警告のSQLWarning.getNextWarning
メソッドを呼び出すことによって取得されます。このメソッドはクローズされた接続の呼出しには使用しません。使用すると
SQLException
がスローされます。注: 後続の警告は、このSQLWarningにチェーンされます。
- 戻り値:
- 最初の
SQLWarning
オブジェクト。ない場合はnull
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 関連項目:
SQLWarning
-
clearWarnings
void clearWarnings() throws SQLExceptionこのConnection
オブジェクトに関して報告されたすべての警告をクリアします。 このメソッドを呼び出したあと、このConnection
オブジェクトに対する新しい警告が通知されるまで、getWarnings
はnull
を返します。- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合
-
createStatement
Statement createStatement(int resultSetType, int resultSetConcurrency) throws SQLException指定された型と並行処理でResultSet
オブジェクトを生成するStatement
オブジェクトを生成します。 このメソッドは上記のcreateStatement
メソッドと同じですが、デフォルトの結果セットの型および並行処理をオーバーライドできます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- パラメータ:
resultSetType
- 結果セットの型。ResultSet.TYPE_FORWARD_ONLY
、ResultSet.TYPE_SCROLL_INSENSITIVE
、またはResultSet.TYPE_SCROLL_SENSITIVE
のうちの1つresultSetConcurrency
- 並行処理の種類。ResultSet.CONCUR_READ_ONLY
またはResultSet.CONCUR_UPDATABLE
- 戻り値:
- 指定された型および並行処理で
ResultSet
オブジェクトを生成する新しいStatement
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型および並行処理を示すResultSet
定数でない場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットのタイプと結果セットの並行処理でサポートされない場合- 導入されたバージョン:
- 1.2
-
prepareStatement
PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency) throws SQLException指定された型と並行処理でResultSet
オブジェクトを生成するPreparedStatement
オブジェクトを生成します。 このメソッドは上記のprepareStatement
メソッドと同じですが、デフォルトの結果セットの型および並行処理をオーバーライドできます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- パラメータ:
sql
- SQL文がデータベースへ送られるString
オブジェクト。次のものを含めることができる: 1つ以上の'?' INパラメータresultSetType
- 結果セットの型。ResultSet.TYPE_FORWARD_ONLY
、ResultSet.TYPE_SCROLL_INSENSITIVE
、またはResultSet.TYPE_SCROLL_SENSITIVE
のうちの1つresultSetConcurrency
- 並行処理の種類。ResultSet.CONCUR_READ_ONLY
またはResultSet.CONCUR_UPDATABLE
- 戻り値:
- プリコンパイルされたSQL文を含む新しいPreparedStatementオブジェクト。指定された型および並行処理で
ResultSet
オブジェクトを生成する - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型および並行処理を示すResultSet
定数でない場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットのタイプと結果セットの並行処理でサポートされない場合- 導入されたバージョン:
- 1.2
-
prepareCall
CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency) throws SQLException指定された型と並行処理でResultSet
オブジェクトを生成するCallableStatement
オブジェクトを生成します。 このメソッドは上記のprepareCall
メソッドと同じですが、デフォルトの結果セットの型および並行処理をオーバーライドできます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- パラメータ:
sql
- SQL文がデータベースへ送られるString
オブジェクト。1つ以上の'?'パラメータを含めることができるresultSetType
- 結果セットの型。ResultSet.TYPE_FORWARD_ONLY
、ResultSet.TYPE_SCROLL_INSENSITIVE
、またはResultSet.TYPE_SCROLL_SENSITIVE
のうちの1つresultSetConcurrency
- 並行処理の種類。ResultSet.CONCUR_READ_ONLY
またはResultSet.CONCUR_UPDATABLE
- 戻り値:
- プリコンパイルされたSQL文を含む新しい
CallableStatement
オブジェクト。指定された型および並行処理でResultSet
オブジェクトを生成する - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型および並行処理を示すResultSet
定数でない場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットのタイプと結果セットの並行処理でサポートされない場合- 導入されたバージョン:
- 1.2
-
getTypeMap
Map<String,Class<?>> getTypeMap() throws SQLExceptionこのConnection
オブジェクトに関連付けられたMap
オブジェクトを取得します。 アプリケーションがエントリを追加していないかぎり、空のマップが返されます。JDBCドライバは、
setTypeMap
に渡されたMap
オブジェクトの内部コピーを作成することがあるため、getTypeMap
から返されたMap
オブジェクトの変更後、setTypeMap
を呼び出す必要があります。Map<String,Class<?>> myMap = con.getTypeMap(); myMap.put("mySchemaName.ATHLETES", Athletes.class); con.setTypeMap(myMap);
- 戻り値:
- この
Connection
オブジェクトに関連付けられたjava.util.Map
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.2
- 関連項目:
setTypeMap(java.util.Map<java.lang.String, java.lang.Class<?>>)
-
setTypeMap
void setTypeMap(Map<String,Class<?>> map) throws SQLExceptionこのConnection
オブジェクトの型マップとして、指定されたTypeMap
オブジェクトをインストールします。 型マップは、SQL構造化型および個別の型のカスタム・マッピングに使用されます。setMap
を呼び出す前に、TypeMap
の値を設定する必要があります。これは、JDBCドライバがTypeMap
の内部コピーを作成する可能性があるためです:Map myMap<String,Class<?>> = new HashMap<String,Class<?>>(); myMap.put("mySchemaName.ATHLETES", Athletes.class); con.setTypeMap(myMap);
- パラメータ:
map
- このConnection
オブジェクトのデフォルトの型マップの代わりとしてインストールするjava.util.Map
オブジェクト- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータがjava.util.Map
オブジェクトではない場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.2
- 関連項目:
getTypeMap()
-
setHoldability
void setHoldability(int holdability) throws SQLExceptionこのConnection
オブジェクトを使用して生成されたResultSet
オブジェクトのデフォルトの保持機能を指定された保持機能へ変更します。ResultSet
オブジェクトのデフォルトの保持可能性は、DatabaseMetaData.getResultSetHoldability()
を呼び出すことによって判断できます。- パラメータ:
holdability
-ResultSet
保持機能定数。ResultSet.HOLD_CURSORS_OVER_COMMIT
またはResultSet.CLOSE_CURSORS_AT_COMMIT
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが保持機能を示すResultSet
定数ではない場合SQLFeatureNotSupportedException
- 指定された保持機能がサポートされていない場合- 導入されたバージョン:
- 1.4
- 関連項目:
getHoldability()
、DatabaseMetaData.getResultSetHoldability()
、ResultSet
-
getHoldability
int getHoldability() throws SQLExceptionこのConnection
オブジェクトを使用して生成されたResultSet
オブジェクトの現在の保持機能を取得します。- 戻り値:
- 保持機能。
ResultSet.HOLD_CURSORS_OVER_COMMIT
またはResultSet.CLOSE_CURSORS_AT_COMMIT
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 導入されたバージョン:
- 1.4
- 関連項目:
setHoldability(int)
、DatabaseMetaData.getResultSetHoldability()
、ResultSet
-
setSavepoint
Savepoint setSavepoint() throws SQLException現在のトランザクションで名前のないセーブポイントを作成し、それを表す新しいSavepoint
オブジェクトを返します。アクティブなトランザクションの外部でsetSavepointが呼び出されると、この新しく作成されたセーブポイントでトランザクションが開始されます。
- 戻り値:
- 新しい
Savepoint
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、またはこのConnection
オブジェクトが現在自動コミット・モードである場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
- 関連項目:
Savepoint
-
setSavepoint
Savepoint setSavepoint(String name) throws SQLException現在のトランザクションで指定された名前のセーブポイントを作成し、それを表す新しいSavepoint
オブジェクトを返します。アクティブなトランザクションの外部でsetSavepointが呼び出されると、この新しく作成されたセーブポイントでトランザクションが開始されます。
- パラメータ:
name
- セーブポイントの名前を格納するString
- 戻り値:
- 新しい
Savepoint
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、またはこのConnection
オブジェクトが現在自動コミット・モードである場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
- 関連項目:
Savepoint
-
rollback
void rollback(Savepoint savepoint) throws SQLException指定されたSavepoint
オブジェクトが設定されたあとに行われたすべての変更を元に戻します。このメソッドは自動コミットが無効のときにだけ使用します。
- パラメータ:
savepoint
- ロールバックするSavepoint
オブジェクト- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、Savepoint
オブジェクトが有効でなくなった場合、またはこのConnection
オブジェクトが現在自動コミット・モードである場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
- 関連項目:
Savepoint
,rollback()
-
releaseSavepoint
void releaseSavepoint(Savepoint savepoint) throws SQLException現在のトランザクションから指定されたSavepoint
オブジェクトと以降のSavepoint
オブジェクトを削除します。 削除されたあとでセーブポイントを参照するとSQLException
がスローされます。- パラメータ:
savepoint
- 削除するSavepoint
オブジェクト- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたSavepoint
オブジェクトが現在のトランザクションで有効なセーブポイントでない場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
-
createStatement
Statement createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException指定された型、並行処理、および保持機能でResultSet
オブジェクトを生成するStatement
オブジェクトを生成します。 このメソッドは上記のcreateStatement
メソッドと同じですが、デフォルトの結果セットの型、並行処理、および保持機能をオーバーライドできます。- パラメータ:
resultSetType
-ResultSet
定数。ResultSet.TYPE_FORWARD_ONLY
、ResultSet.TYPE_SCROLL_INSENSITIVE
、またはResultSet.TYPE_SCROLL_SENSITIVE
のうちの1つresultSetConcurrency
-ResultSet
定数。ResultSet.CONCUR_READ_ONLY
またはResultSet.CONCUR_UPDATABLE
resultSetHoldability
-ResultSet
定数。ResultSet.HOLD_CURSORS_OVER_COMMIT
またはResultSet.CLOSE_CURSORS_AT_COMMIT
- 戻り値:
- 指定された型、並行処理、および保持機能で
ResultSet
オブジェクトを生成する新しいStatement
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型、並行処理、および保持機能を示すResultSet
定数でない場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型、結果セットの保持機能、および結果セットの並行処理でサポートされない場合- 導入されたバージョン:
- 1.4
- 関連項目:
ResultSet
-
prepareStatement
PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException指定された型、並行処理、および保持機能でResultSet
オブジェクトを生成するPreparedStatement
オブジェクトを生成します。このメソッドは上記の
prepareStatement
メソッドと同じですが、デフォルトの結果セットの型、並行処理、および保持機能をオーバーライドできます。- パラメータ:
sql
- SQL文がデータベースへ送られるString
オブジェクト。次のものを含めることができる: 1つ以上の'?' INパラメータresultSetType
-ResultSet
定数。ResultSet.TYPE_FORWARD_ONLY
、ResultSet.TYPE_SCROLL_INSENSITIVE
、またはResultSet.TYPE_SCROLL_SENSITIVE
のうちの1つresultSetConcurrency
-ResultSet
定数。ResultSet.CONCUR_READ_ONLY
またはResultSet.CONCUR_UPDATABLE
resultSetHoldability
-ResultSet
定数。ResultSet.HOLD_CURSORS_OVER_COMMIT
またはResultSet.CLOSE_CURSORS_AT_COMMIT
- 戻り値:
- プリコンパイルされたSQL文を含む新しい
PreparedStatement
オブジェクト。指定された型、並行処理、および保持機能でResultSet
オブジェクトを生成する - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型、並行処理、および保持機能を示すResultSet
定数でない場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型、結果セットの保持機能、および結果セットの並行処理でサポートされない場合- 導入されたバージョン:
- 1.4
- 関連項目:
ResultSet
-
prepareCall
CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException指定された型と並行処理でResultSet
オブジェクトを生成するCallableStatement
オブジェクトを生成します。 このメソッドは上記のprepareCall
メソッドと同じですが、デフォルトの結果セットの型、結果セットの並行処理の種類、および保持機能をオーバーライドできます。- パラメータ:
sql
- SQL文がデータベースへ送られるString
オブジェクト。1つ以上の'?'パラメータを含めることができるresultSetType
-ResultSet
定数。ResultSet.TYPE_FORWARD_ONLY
、ResultSet.TYPE_SCROLL_INSENSITIVE
、またはResultSet.TYPE_SCROLL_SENSITIVE
のうちの1つresultSetConcurrency
-ResultSet
定数。ResultSet.CONCUR_READ_ONLY
またはResultSet.CONCUR_UPDATABLE
resultSetHoldability
-ResultSet
定数。ResultSet.HOLD_CURSORS_OVER_COMMIT
またはResultSet.CLOSE_CURSORS_AT_COMMIT
- 戻り値:
- プリコンパイルされたSQL文を含む新しい
CallableStatement
オブジェクト。指定された型、並行処理、および保持機能でResultSet
オブジェクトを生成する - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型、並行処理、および保持機能を示すResultSet
定数でない場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型、結果セットの保持機能、および結果セットの並行処理でサポートされない場合- 導入されたバージョン:
- 1.4
- 関連項目:
ResultSet
-
prepareStatement
PreparedStatement prepareStatement(String sql, int autoGeneratedKeys) throws SQLException自動生成キーを取得する機能を持つデフォルトのPreparedStatement
オブジェクトを生成します。 指定された定数によって、ドライバが自動生成キーを取得可能にするかどうかが指定されます。 SQL文がINSERT
文でない場合、または自動生成キーを返すことができるSQL文でない場合、このパラメータは無視されます。このような文のリストはベンダー固有です。注: このメソッドは、プリコンパイルが効果のある、パラメータ付きSQL文を処理するために最適化されています。 ドライバが、プリコンパイルをサポートしている場合、
prepareStatement
メソッドは、その文をプリコンパイル用としてデータベースに送ります。 ドライバによっては、プリコンパイルをサポートしていないものがあります。 この場合、PreparedStatement
オブジェクトが実行されるまで、文はデータベースに送られません。 これはユーザーに直接的な影響はありませんが、どのメソッドが特定のSQLExceptionをスローするかに関して影響があります。返される
PreparedStatement
オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY
の型で、CONCUR_READ_ONLY
の並行処理レベルを持ちます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- パラメータ:
sql
- 次を含めることができるSQL文: 1つ以上の'?' INパラメータ・プレースホルダーautoGeneratedKeys
- 自動生成キーを返すかどうかを示すフラグ。Statement.RETURN_GENERATED_KEYS
またはStatement.NO_GENERATED_KEYS
- 戻り値:
- プリコンパイルされたSQL文を含む新しい
PreparedStatement
オブジェクト。自動生成キーを返す機能を持つ - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが自動生成キーを返すかどうかを示すStatement
定数でない場合SQLFeatureNotSupportedException
- JDBCドライバが定数Statement.RETURN_GENERATED_KEYSを指定したこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
-
prepareStatement
PreparedStatement prepareStatement(String sql, int[] columnIndexes) throws SQLException指定された配列によって指定された自動生成キーを返す機能を持つデフォルトのPreparedStatement
オブジェクトを生成します。 この配列は検索可能にする自動生成キーを含むターゲット表の列のインデックスを含みます。 SQL文がINSERT
文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの配列を無視します。INパラメータ付きまたはINパラメータなしのSQL文は、プリコンパイルして、
PreparedStatement
オブジェクトに格納できます。 その後、このオブジェクトは、この文を複数回効率的に実行するために使用できます。注: このメソッドは、プリコンパイルが効果のある、パラメータ付きSQL文を処理するために最適化されています。 ドライバが、プリコンパイルをサポートしている場合、
prepareStatement
メソッドは、その文をプリコンパイル用としてデータベースに送ります。 ドライバによっては、プリコンパイルをサポートしていないものがあります。 この場合、PreparedStatement
オブジェクトが実行されるまで、文はデータベースに送られません。 これはユーザーに直接的な影響はありませんが、どのメソッドが特定のSQLExceptionをスローするかに関して影響があります。返される
PreparedStatement
オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY
の型で、CONCUR_READ_ONLY
の並行処理レベルを持ちます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- パラメータ:
sql
- 次を含めることができるSQL文: 1つ以上の'?' INパラメータ・プレースホルダーcolumnIndexes
- 挿入された行から返される列を示す列インデックスの配列- 戻り値:
- プリコンパイルされた文を含む新しい
PreparedStatement
オブジェクト。指定された列インデックスの配列によって指定される自動生成キーを返す機能を持つ - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
-
prepareStatement
PreparedStatement prepareStatement(String sql, String[] columnNames) throws SQLException指定された配列によって指定された自動生成キーを返す機能を持つデフォルトのPreparedStatement
オブジェクトを生成します。 この配列は、返される自動生成キーを含むターゲット表の列の名前を含みます。 SQL文がINSERT
文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの配列を無視します。INパラメータ付きまたはINパラメータなしのSQL文は、プリコンパイルして、
PreparedStatement
オブジェクトに格納できます。 その後、このオブジェクトは、この文を複数回効率的に実行するために使用できます。注: このメソッドは、プリコンパイルが効果のある、パラメータ付きSQL文を処理するために最適化されています。 ドライバが、プリコンパイルをサポートしている場合、
prepareStatement
メソッドは、その文をプリコンパイル用としてデータベースに送ります。 ドライバによっては、プリコンパイルをサポートしていないものがあります。 この場合、PreparedStatement
オブジェクトが実行されるまで、文はデータベースに送られません。 これはユーザーに直接的な影響はありませんが、どのメソッドが特定のSQLExceptionをスローするかに関して影響があります。返される
PreparedStatement
オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY
の型で、CONCUR_READ_ONLY
の並行処理レベルを持ちます。 作成された結果セットの保持機能は、getHoldability()
を呼び出すことで判断できます。- パラメータ:
sql
- 次を含めることができるSQL文: 1つ以上の'?' INパラメータ・プレースホルダーcolumnNames
- 挿入された行から返される列を示す列名の配列- 戻り値:
- プリコンパイルされた文を含む新しい
PreparedStatement
オブジェクト。指定された列名の配列によって指定される自動生成キーを返す機能を持つ - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
-
createClob
Clob createClob() throws SQLExceptionClob
インタフェースを実装しているオブジェクトを構築します。 返されるオブジェクトは、初期状態ではデータが格納されていません。 データをClob
に追加するには、Clob
インタフェースのsetAsciiStream
、setCharacterStream
、setString
の各メソッドを使用できます。- 戻り値:
Clob
インタフェースを実装しているオブジェクト- 例外:
SQLException
-Clob
インタフェースを実装するオブジェクトを構築できなかった場合、このメソッドがクローズされた接続に対して呼び出された場合、またはデータベース・アクセス・エラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのデータ型をサポートしない場合- 導入されたバージョン:
- 1.6
-
createBlob
Blob createBlob() throws SQLExceptionBlob
インタフェースを実装しているオブジェクトを構築します。 返されるオブジェクトは、初期状態ではデータが格納されていません。 データをBlob
に追加するには、Blob
インタフェースのsetBinaryStream
およびsetBytes
メソッドを使用できます。- 戻り値:
Blob
インタフェースを実装しているオブジェクト- 例外:
SQLException
-Blob
インタフェースを実装するオブジェクトを構築できなかった場合、このメソッドがクローズされた接続に対して呼び出された場合、またはデータベース・アクセス・エラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのデータ型をサポートしない場合- 導入されたバージョン:
- 1.6
-
createNClob
NClob createNClob() throws SQLExceptionNClob
インタフェースを実装しているオブジェクトを構築します。 返されるオブジェクトは、初期状態ではデータが格納されていません。 データをNClob
に追加するには、NClob
インタフェースのsetAsciiStream
、setCharacterStream
、setString
の各メソッドを使用できます。- 戻り値:
NClob
インタフェースを実装しているオブジェクト- 例外:
SQLException
-NClob
インタフェースを実装するオブジェクトを構築できなかった場合、このメソッドがクローズされた接続に対して呼び出された場合、またはデータベース・アクセス・エラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのデータ型をサポートしない場合- 導入されたバージョン:
- 1.6
-
createSQLXML
SQLXML createSQLXML() throws SQLExceptionSQLXML
インタフェースを実装しているオブジェクトを構築します。 返されるオブジェクトは、初期状態ではデータが格納されていません。 データをSQLXML
オブジェクトに追加するには、SQLXML
インタフェースのcreateXmlStreamWriter
オブジェクトとsetString
メソッドを使用できます。- 戻り値:
SQLXML
インタフェースを実装しているオブジェクト- 例外:
SQLException
-SQLXML
インタフェースを実装するオブジェクトを構築できなかった場合、このメソッドがクローズされた接続に対して呼び出された場合、またはデータベース・アクセス・エラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのデータ型をサポートしない場合- 導入されたバージョン:
- 1.6
-
isValid
boolean isValid(int timeout) throws SQLException接続がクローズされておらず、まだ有効である場合はtrueを返します。 ドライバは、接続に対するクエリーを送信するか、またはこのメソッドが呼び出されるときに接続がまだ有効であることを明確に検証するその他のメカニズムを使用します。接続を検証するためにドライバによって送信されるクエリーは、現在のトランザクションのコンテキストで実行されます。
- パラメータ:
timeout
- 接続を検証するために使用したデータベース操作の完了を待機する秒数。 操作の完了前にタイム・アウト期間が過ぎると、このメソッドはfalseを返す。 値0は、タイム・アウトがこのデータベース操作に適用されないことを示す- 戻り値:
- 接続が有効な場合はtrue、そうでない場合はfalse
- 例外:
SQLException
-timeout
に指定された値が0より小さい場合- 導入されたバージョン:
- 1.6
- 関連項目:
DatabaseMetaData.getClientInfoProperties()
-
setClientInfo
void setClientInfo(String name, String value) throws SQLClientInfoExceptionnameで指定されたクライアント情報プロパティの値を、valueで指定された値に設定します。アプリケーションでは、ドライバでサポートされるクライアント情報プロパティ、および各プロパティに指定できる最大長を判断するために、
DatabaseMetaData.getClientInfoProperties
メソッドを使用できます。ドライバは、指定された値をデータベース内の適切な場所に格納します。 たとえば、特殊なレジスタ、セッション・パラメータ、システム表の列などです。 効率性の観点から、次に文が実行または準備されるまで、ドライバはデータベースへの値の設定を保留することがあります。 クライアント情報をデータベース内の適切な場所に格納すること以外に、これらのメソッドが接続の動作を変更することはありません。 これらのメソッドに指定された値は、検討、診断、およびデバッグの目的のみに使用されます。
指定されたクライアント情報名がドライバで認識されない場合、ドライバは警告を生成します。
このメソッドに指定された値がプロパティの最大長よりも長い場合、ドライバは値を切詰め、警告を生成するか、または
SQLClientInfoException
を生成する場合があります。 ドライバがSQLClientInfoException
を生成した場合、指定された値は接続に設定されていません。標準のクライアント情報プロパティを次に示します。 ドライバでこれらのプロパティをサポートする必要はありませんが、いずれかの標準プロパティによって記述できるクライアント情報プロパティをサポートしている場合は、その標準プロパティ名を使用するようにしてください。
- ApplicationName - 現在接続を利用しているアプリケーションの名前
- ClientUser - 接続を使用しているアプリケーションが実行している処理のユーザーの名前。 接続を確立するために使用されたユーザー名と同じにならない場合があります。
- ClientHostname - 接続を使用しているアプリケーションが実行されているコンピュータのホスト名
- パラメータ:
name
- 設定するクライアント情報プロパティの名前value
- クライアント情報プロパティに設定する値。 値がnullの場合、指定されたプロパティの現在の値がクリアされる- 例外:
SQLClientInfoException
- データベース・サーバーでクライアント情報値の設定中にデータベース・サーバーがエラーを返した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 導入されたバージョン:
- 1.6
-
setClientInfo
void setClientInfo(Properties properties) throws SQLClientInfoException接続のクライアント情報プロパティの値を設定します。Properties
オブジェクトには、設定されるクライアント情報プロパティの名前と値が格納されています。 プロパティ・リストに含まれるクライアント情報プロパティのセットによって、接続のクライアント情報プロパティの現在のセットが置き換えられます。 現在接続で設定されているプロパティがプロパティ・リストに存在しない場合、そのプロパティはクリアされます。 空のプロパティ・リストを指定すると、接続のすべてのプロパティがクリアされます。 詳細は、setClientInfo (String, String)
を参照してください。いずれかのクライアント情報プロパティの設定時にエラーが発生した場合、
SQLClientInfoException
がスローされます。SQLClientInfoException
には、設定されなかったクライアント情報プロパティを示す情報が格納されています。 一部のデータベースでは、複数のクライアント情報プロパティを原子的に設定することが許可されないため、クライアント情報の状態は不明です。 そのようなデータベースでは、エラーが起きる前に1つ以上のプロパティが設定された可能性があります。- パラメータ:
properties
- 設定するクライアント情報プロパティのリスト- 例外:
SQLClientInfoException
- データベース・サーバーでクライアント情報値の設定中にデータベース・サーバーがエラーを返した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 導入されたバージョン:
- 1.6
- 関連項目:
setClientInfo(String, String)
-
getClientInfo
String getClientInfo(String name) throws SQLException名前で指定されたをクライアント情報プロパティの値を返します。 指定されたクライアント情報プロパティが設定されていなくて、かつデフォルト値がない場合、このメソッドはnullを返すことがあります。 また、指定されたクライアント情報プロパティ名がドライバでサポートされていない場合もnullを返します。アプリケーションでは、ドライバでサポートされるクライアント情報プロパティを判断するために、
DatabaseMetaData.getClientInfoProperties
メソッドを使用できます。- パラメータ:
name
- 取得するクライアント情報プロパティの名前- 戻り値:
- 指定されたクライアント情報プロパティの値
- 例外:
SQLException
- データベースからクライアント情報値のフェッチ中にデータベース・サーバーがエラーを返した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 導入されたバージョン:
- 1.6
- 関連項目:
DatabaseMetaData.getClientInfoProperties()
-
getClientInfo
Properties getClientInfo() throws SQLExceptionドライバでサポートされる各クライアント情報プロパティの名前と現在の値が含まれるリストを返します。 クライアント情報プロパティが設定されていなくて、かつデフォルト値がない場合、このプロパティの値はnullになることがあります。- 戻り値:
- ドライバでサポートされる各クライアント情報プロパティの名前と現在の値が含まれる
Properties
オブジェクト。 - 例外:
SQLException
- データベースからクライアント情報値のフェッチ中にデータベース・サーバーがエラーを返した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 導入されたバージョン:
- 1.6
-
createArrayOf
Array createArrayOf(String typeName, Object[] elements) throws SQLExceptionArrayオブジェクトを生成するファクトリ・メソッドです。注:
createArrayOf
を使用して、プリミティブ・データ型にマッピングする配列オブジェクトを生成する場合、Array
オブジェクトがそのプリミティブ・データ型の配列とObject
の配列のどちらであるかは実装で定義されます。注: JDBCドライバは、
Object
配列の要素を、Object
の指定されたクラスについてjava.sql.Typesで定義されたデフォルトのJDBC SQL型にマッピングします。 デフォルトのマッピングは、JDBC仕様の付録Bで指定されています。 結果として得られるJDBC型が指定されたtypeNameに適した型ではない場合、SQLException
がスローされるか、それともドライバが結果として得られる変換をサポートするかについては、実装で定義されています。- パラメータ:
typeName
- 配列の要素がマッピングされる型のSQL名。 typeNameはデータベース固有の名前で、組込み型、ユーザー定義型、またはこのデータベースでサポートされる標準SQL型の名前のこと。 これは、Array.getBaseTypeName
で返される値elements
- 返されるオブジェクトを生成する要素- 戻り値:
- 指定されたSQL型に要素がマッピングされるArrayオブジェクト
- 例外:
SQLException
- データベース・エラーが発生した場合、JDBC型がtypeNameに適しておらず、かつ変換がサポートされていない場合、typeNameがnullの場合、またはこのメソッドがクローズされた接続に対して呼び出された場合SQLFeatureNotSupportedException
- JDBCドライバがこのデータ型をサポートしない場合- 導入されたバージョン:
- 1.6
-
createStruct
Struct createStruct(String typeName, Object[] attributes) throws SQLExceptionStructオブジェクトを生成するファクトリ・メソッドです。- パラメータ:
typeName
- このStruct
オブジェクトがマッピングされるSQL構造化型のSQL型名。 typeNameは、このデータベースに定義されたユーザー定義型の名前。 これは、Struct.getSQLTypeName
で返される値。attributes
- 返されるオブジェクトを生成する属性- 戻り値:
- 指定されたSQL型にマッピングされ、かつ指定された属性で生成されるStructオブジェクト
- 例外:
SQLException
- データベース・エラーが発生した場合、typeNameがnullの場合、またはこのメソッドがクローズされた接続について呼び出された場合SQLFeatureNotSupportedException
- JDBCドライバがこのデータ型をサポートしない場合- 導入されたバージョン:
- 1.6
-
setSchema
void setSchema(String schema) throws SQLExceptionアクセスするスキーマ名を設定します。ドライバがスキーマをサポートしていない場合は、この要求を無視します。
setSchema
の呼出しは、前に作成または準備されたStatement
オブジェクトには影響を与えません。Connection
メソッドprepareStatement
またはprepareCall
が呼び出されたときにDBMS準備操作がただちに実行されるかどうかは、実装で定義されます。 移植性を最大限にするには、Statement
の作成または準備の前にsetSchema
を呼び出す必要があります。- パラメータ:
schema
- 作業のためのスキーマ名- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 導入されたバージョン:
- 1.7
- 関連項目:
getSchema()
-
getSchema
String getSchema() throws SQLExceptionこのConnection
オブジェクトの現在のスキーマ名を取得します。- 戻り値:
- 現在のスキーマ名。存在しない場合は
null
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合- 導入されたバージョン:
- 1.7
- 関連項目:
setSchema(java.lang.String)
-
abort
void abort(Executor executor) throws SQLExceptionオープン接続を終了します。abort
呼出しの結果は次のとおりです。- 接続がクローズとマークされる
- データベースへのすべての物理接続をクローズする
- 接続によって使用されているリソースを解放する
- 現在接続にアクセスしているすべてのスレッドを続行して完了させるか、
SQLException
をスローさせる。
abort
を呼び出すと、接続がクローズとマークされ、すべてのリソースが解放されます。 クローズしている接続に対してabort
を呼び出しても何も操作を行いません。接続によって保持されているリソースの中止と解放には、かなりの時間がかかることがあります。
abort
メソッドから戻ったときに、接続はクローズとマークされますが、パラメータとしてabortに渡されたExecutor
は引き続きタスクを実行し、リソースを解放している場合があります。このメソッドは、メソッドの続行を許可する前に、
SQLPermission
オブジェクトが存在するかどうかを確認します。SecurityManager
が存在し、そのcheckPermission
メソッドがabort
の呼出しを許可しない場合、このメソッドはjava.lang.SecurityException
をスローします。- パラメータ:
executor
-abort
で使用されるExecutor
実装。- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはexecutor
がnull
の場合SecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがabort
の呼出しを拒否した場合- 導入されたバージョン:
- 1.7
- 関連項目:
SecurityManager.checkPermission(java.security.Permission)
,Executor
-
setNetworkTimeout
void setNetworkTimeout(Executor executor, int milliseconds) throws SQLExceptionConnection
またはConnection
から作成されたオブジェクトが、データベースが任意の1つの要求に応答するのを待つ最大期間を設定します。 いずれかの要求が応答されないままの場合、待機中のメソッドがSQLException
で戻り、Connection
またはConnection
から作成されたオブジェクトがクローズとマークされます。 その後のオブジェクトの使用は、close
、isClosed
、またはConnection.isValid
メソッドを除いて、SQLException
になります。注: このメソッドは、ネットワーク・パーティションがソケット読取りでOS TCP-TIMEOUT (一般に10分)までJDBC呼出しを発行するスレッドを絶えずハング・アップさせる、めったにないが深刻な状況に対処するためのものです。 このメソッドは、JDBC接続が管理者スレッドにアクセスできる場合に、管理者スレッドに、そのようなスレッドを解放する手段を提供する
abort()
メソッドに関連しています。setNetworkTimeout
メソッドは、管理者スレッドがない場合や、接続にアクセスできない状況に対処します。 このメソッドは、その効果が重大であるため、トランザクション・タイムアウトなどの通常のタイム・アウトの前にトリガーされないように、十分に大きな値を指定してください。JDBCドライバの実装では、ネットワークが存在しない環境で、
setNetworkTimeout
メソッドをサポートし、データベース応答時間に制限を課すことを選択することもできます。ドライバは、複数のドライバとデータベース間の内部伝送によって、それらのAPI呼出しの一部またはすべてを内部で実装できますが、API呼び出しへの応答またはAPI呼出し時に行われた個々の要求に対し、常に制限を適用するかどうかの決定は、ドライバの実装に任されています。
このメソッドはJDBCコードの領域に制限を設定し、この領域から出るときに、デフォルトにリセットするなど、複数回呼び出すことができます。 このメソッドの呼出しは、未処理の要求には無効です。
Statement.setQueryTimeout()
タイム・アウト値は、setNetworkTimeout
に指定されているタイム・アウト値から独立しています。 ネットワークのタイム・アウトの前に、クエリーのタイム・アウトが期限切れになると、文の実行が取り消されます。 ネットワークがまだアクティブな場合、文と接続の両方が使用可能なままになります。 ただし、クエリーのタイム・アウトの前にネットワークのタイム・アウトが期限切れになるか、ネットワークの問題のために、文のタイム・アウトが失敗した場合、接続はクローズとマークされ、接続によって保持されているすべてのリソースが解放されて、接続と文の両方が使用不可になります。ドライバが
setNetworkTimeout
タイム・アウト値が期限切れになったと判断すると、JDBCドライバは接続をクローズとマークして、接続によって保持されているすべてのリソースを解放します。このメソッドは、メソッドの続行を許可する前に、
SQLPermission
オブジェクトが存在するかどうかを確認します。SecurityManager
が存在し、そのcheckPermission
メソッドがsetNetworkTimeout
の呼出しを許可しない場合、このメソッドはjava.lang.SecurityException
をスローします。- パラメータ:
executor
-setNetworkTimeout
で使用されるExecutor
実装。milliseconds
- データベース操作の完了を待機する時間(ミリ秒)。 JDBCドライバがミリ秒をサポートしていない場合、秒単位に丸められる。 操作の完了前にタイム・アウト期間が過ぎると、SQLExceptionがスローされる。 0の値はデータベース操作にタイム・アウトがないことを示す。- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、executor
がnull
である場合、またはseconds
に指定された値が0未満の場合。SecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがsetNetworkTimeout
の呼出しを拒否した場合。SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.7
- 関連項目:
SecurityManager.checkPermission(java.security.Permission)
,Statement.setQueryTimeout(int)
,getNetworkTimeout()
,abort(java.util.concurrent.Executor)
,Executor
-
getNetworkTimeout
int getNetworkTimeout() throws SQLExceptionドライバがデータベース要求の完了を待つミリ秒数を取得します。 この制限を超えると、SQLException
がスローされます。- 戻り値:
- 現在のタイム・アウト制限(秒単位)。ゼロは制限なしを意味する
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた次のものについて呼び出された場合:Connection
SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.7
- 関連項目:
setNetworkTimeout(java.util.concurrent.Executor, int)
-
beginRequest
default void beginRequest() throws SQLException独立した作業単位であるリクエストがこの接続から始まっていることを運転手に知らせます。 各リクエストは、クライアントまたはサーバーのいずれかの接続にローカルな状態に関する他のすべてのリクエストとは独立しています。beginRequest
、endRequest
のペア間で行われた作業は、別のリクエストの一部として、またはリクエストの外に接続で行われた他の作業に依存しません。 リクエストには、複数のトランザクションが含まれる場合があります。 接続にローカルではないため、コミットされたデータベースの状態に依存することがあります。ローカル状態は、トランスペアレントに再現できないクライアントまたはデータベース内の現在のConnectionに対してローカルなConnectionに関連付けられている状態として定義されます。
beginRequest
とendRequest
の呼び出しはネストされていません。endRequest
への介入なしで、beginRequest
への複数の呼び出しはエラーではありません。 最初のbeginRequest
コールはリクエストの開始を示し、後続のコールはノー・オペレーションとして扱われますbeginRequest
およびendRequest
の使用はオプションで、ベンダー固有のものであり、ほとんど透過的でなければなりません。 特に、実装は、オープン・トランザクションのような他の作業への依存を示す条件を検出することができます。 アクティブなトランザクションがあり、beginRequest
が呼び出された場合、実装がSQLException
をスローすることは必須ではありませんが、推奨されます。 これらのメソッドを使用すると、パフォーマンスが向上したり、その他の利点が得られます。 追加情報については、ベンダーのマニュアルを参照してください。各作業単位を
beginRequest
、endRequest
のペアで囲んで、リクエストの開始または終了時にオープン・トランザクションがなく、リクエスト境界をまたいだローカル状態に依存しないようにすることをお勧めします。 コミットされたデータベースの状態はローカルではありません。- APIの注:
- このメソッドは、接続プール・マネージャで使用されます。
プーリング・マネージャは、呼び出し元への接続を返す前に、基になる接続で
beginRequest
を呼び出す必要があります。プーリング・マネージャは、次の場合に
beginRequest
を呼び出す必要はありません:- 接続プールは、
PooledConnection
オブジェクトをキャッシュ getConnection
がアプリケーションによって呼び出されたときに論理接続ハンドルを返します。- 論理
Connection
は、PooledConnection
をキャッシュに戻す前にConnection.close
を呼び出すことによって閉じられます。
- 接続プールは、
- 実装要件:
- デフォルトの実装はノー・オペレーションです。
- 例外:
SQLException
- エラーが発生した場合- 導入されたバージョン:
- 9
- 関連項目:
endRequest()
,PooledConnection
-
endRequest
default void endRequest() throws SQLException独立した作業単位であるリクエストが完了したことを運転手に知らせます。beginRequest
とendRequest
の呼び出しはネストされていません。beginRequest
への介入なしで、endRequest
への複数の呼び出しはエラーではありません。 最初のendRequest
コールは完了したリクエストをマークし、後続のコールはノー・オペレーションとして扱われます。endRequest
がbeginRequest
への初期呼び出しなしで呼び出された場合、no-opです。このメソッドの正確な動作は、ベンダー固有のものです。 特に、実装は、オープン・トランザクションのような他の作業への依存を示す条件を検出することができます。 アクティブなトランザクションがあり、
endRequest
が呼び出された場合、実装がSQLException
をスローすることは必須ではありませんが、推奨されます。- APIの注:
- このメソッドは、接続プール・マネージャで使用されます。
アプリケーションが接続プールに接続を戻すとき、プーリング・マネージャは、基礎となる接続で
endRequest
を呼び出す必要があります。プーリング・マネージャは、次の場合に
endRequest
を呼び出す必要はありません:- 接続プールは、
PooledConnection
オブジェクトをキャッシュ getConnection
がアプリケーションによって呼び出されたときに論理接続ハンドルを返します。- 論理
Connection
は、PooledConnection
をキャッシュに戻す前にConnection.close
を呼び出すことによって閉じられます。
- 接続プールは、
- 実装要件:
- デフォルトの実装はノー・オペレーションです。
- 例外:
SQLException
- エラーが発生した場合- 導入されたバージョン:
- 9
- 関連項目:
beginRequest()
,PooledConnection
-
setShardingKeyIfValid
default boolean setShardingKeyIfValid(ShardingKey shardingKey, ShardingKey superShardingKey, int timeout) throws SQLExceptionこの接続のシャーディング・キーを設定および検証します。 シャーディング・キーにはnull
の値を指定することができます。null
シャーディング・キーの有効性はベンダー固有です。 追加情報については、ベンダーのマニュアルを参照してください。- APIの注:
- このメソッドは、shardingキーが
Connection
に対して有効であることを検証します。 タイムアウト値は、setShardingKeyIfValid
がfalseを返す前にシャーディング・キーが有効であることをConnection
が確認するのをドライバが待機する時間を示します。 - 実装要件:
- デフォルトの実装では、
SQLFeatureNotSupportedException
がスローされます。 - パラメータ:
shardingKey
- この接続に対して検証されるシャーディング・キー。 シャーディング・キーは、null
superShardingKey
- この接続に対して検証されるスーパー・シャーディング・キー。 スーパー・シャーディング・キーは、null
であってもよい。timeout
- 検証プロセスが完了するまでの時間(秒単位)。それ以外の場合、検証プロセスは中止されます。 0の値は、検証プロセスがタイムアウトしないことを示します。- 戻り値:
- 接続が有効でシャーディング・キーが有効で、この接続で設定されている場合はtrue。操作が完了する前にシャーディング・キーが有効でないか、タイムアウト期間が切れている場合はfalseです。
- 例外:
SQLException
- この検証の実行中にエラーが発生した場合、superSharedingKey
はshardingKey
なしで指定されます。このメソッドは閉じられたconnection
で呼び出されます。またはtimeout
の値が負の値です。SQLFeatureNotSupportedException
- 運転手がシャーディングをサポートしていない場合- 導入されたバージョン:
- 9
- 関連項目:
ShardingKey
,ShardingKeyBuilder
-
setShardingKeyIfValid
default boolean setShardingKeyIfValid(ShardingKey shardingKey, int timeout) throws SQLExceptionこの接続のシャーディング・キーを設定および検証します。 シャーディング・キーにはnull
の値を指定することができます。null
シャーディング・キーの有効性はベンダー固有です。 追加情報については、ベンダーのマニュアルを参照してください。- APIの注:
- このメソッドは、shardingキーが
Connection
に対して有効であることを検証します。 タイムアウト値は、setShardingKeyIfValid
がfalseを返す前にシャーディング・キーが有効であることをConnection
が確認するのをドライバが待機する時間を示します。 - 実装要件:
- デフォルトの実装では、
SQLFeatureNotSupportedException
がスローされます。 - パラメータ:
shardingKey
- この接続に対して検証されるシャーディング・キー。 シャーディング・キーは、null
timeout
- 検証プロセスが完了するまでの時間(秒単位)。そうでない場合、検証プロセスは中止されます。 0の値は、検証プロセスがタイムアウトしないことを示します。- 戻り値:
- 接続が有効でシャーディング・キーがこの接続で設定されている場合はtrue。操作が完了する前にシャーディング・キーが有効でないか、タイムアウト期間が満了した場合はfalse。
- 例外:
SQLException
- この検証を実行中にエラーが発生した場合、このメソッドは閉じられたconnection
で呼び出されます。またはtimeout
の値が負の値です。SQLFeatureNotSupportedException
- 運転手がシャーディングをサポートしていない場合- 導入されたバージョン:
- 9
- 関連項目:
ShardingKey
,ShardingKeyBuilder
-
setShardingKey
default void setShardingKey(ShardingKey shardingKey, ShardingKey superShardingKey) throws SQLExceptionこのConnectionで使用するshardingKeyおよびsuperShardingKeyを指定- APIの注:
- このメソッドは、指定されたシャーディング・キーを設定しますが、シャーディング・キーが
Connection
に対して有効であることを検証するためにデータベースへのラウンドトリップは必要ありません。 - 実装要件:
- デフォルトの実装では、
SQLFeatureNotSupportedException
がスローされます。 - パラメータ:
shardingKey
- この接続で設定するシャーディング・キー。 シャーディング・キーは、null
superShardingKey
- この接続で設定するスーパー・シャーディング・キー。 スーパー・シャーディング・キーは、null
- 例外:
SQLException
- シャーディング・キーの設定にエラーが発生した場合。このメソッドは閉じられたconnection
で呼び出されます。またはsuperSharedingKey
がshardingKey
なしで指定されているSQLFeatureNotSupportedException
- 運転手がシャーディングをサポートしていない場合- 導入されたバージョン:
- 9
- 関連項目:
ShardingKey
,ShardingKeyBuilder
-
setShardingKey
default void setShardingKey(ShardingKey shardingKey) throws SQLExceptionこのConnectionで使用するshardingKeyを指定- APIの注:
- このメソッドは、指定されたシャーディング・キーを設定しますが、シャーディング・キーが
Connection
に対して有効であることを検証するためにデータベースへのラウンドトリップは必要ありません。 - 実装要件:
- デフォルトの実装では、
SQLFeatureNotSupportedException
がスローされます。 - パラメータ:
shardingKey
- この接続で設定するシャーディング・キー。 シャーディング・キーは、null
- 例外:
SQLException
- シャーディング・キーの設定にエラーが発生した場合。またはこのメソッドは閉じられたconnection
で呼び出されますSQLFeatureNotSupportedException
- 運転手がシャーディングをサポートしていない場合- 導入されたバージョン:
- 9
- 関連項目:
ShardingKey
,ShardingKeyBuilder
-