public interface Connection extends Wrapper, AutoCloseable
特定のデータベースとの接続 (セッション) を表現します。接続のコンテキスト内で SQL 文が実行され結果が返されます。
Connection オブジェクト中のデータベースは、テーブル、サポートしている SQL 文法、ストアドプロシージャー、およびこの接続の能力などについての情報を提供します。この情報は、getMetaData メソッドで取得できます。
注: Connection を構成するときに、JDBC アプリケーションでは 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);
 | 修飾子と型 | フィールドと説明 | 
|---|---|
| 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)オープン接続を終了します。 | 
| 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 オブジェクトを生成するファクトリメソッドです。 | 
| 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(Properties properties)接続のクライアント情報プロパティーの値を設定します。 | 
| void | setClientInfo(String name,              String value)名前で指定されたクライアント情報プロパティーの値を、値で指定された値に設定します。 | 
| 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)アクセスするスキーマ名を設定します。 | 
| void | setTransactionIsolation(int level)この  Connectionオブジェクトのトランザクション遮断レベルを指定されたものに変更することを試みます。 | 
| void | setTypeMap(Map<String,Class<?>> map)この  Connectionオブジェクトの型マップとして、指定されたTypeMapオブジェクトをインストールします。 | 
isWrapperFor, unwrapstatic final int TRANSACTION_NONE
static final int TRANSACTION_READ_UNCOMMITTED
static final int TRANSACTION_READ_COMMITTED
static final int TRANSACTION_REPEATABLE_READ
static final int TRANSACTION_SERIALIZABLE
TRANSACTION_REPEATABLE_READ での禁止に加え、1 つのトランザクションが WHERE 条件を満たすすべての行を読み出し、2 番目のトランザクションが WHERE 条件を満たす行を挿入したあとに、最初のトランザクションが同一の条件で読み込みし直した場合に、2 番目の読み込みでは追加された「ファントム」行を取り出すという状況が禁止されます。Statement createStatement() throws SQLException
Statement オブジェクトを生成します。パラメータなしの SQL 文は通常、Statement オブジェクトを使用して実行されます。同じ SQL 文が多数回実行される場合は、PreparedStatement オブジェクトを使用する方が効率的なことがあります。
 
返される Statement オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY の型で、CONCUR_READ_ONLY の並行処理レベルを持ちます。作成された結果セットの保持機能は、getHoldability() を呼び出すことで判断できます。
Statement オブジェクトSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合PreparedStatement prepareStatement(String sql) throws SQLException
PreparedStatement オブジェクトを生成します。
 
IN パラメータ付きまたは IN パラメータなしの SQL 文は、プリコンパイルして、PreparedStatement オブジェクトに格納できます。その後、このオブジェクトは、この文を複数回効率的に実行するために使用できます。
注: このメソッドは、プリコンパイルが効果のある、パラメータ付き SQL 文を処理するために最適化されています。ドライバが、プリコンパイルをサポートしている場合、prepareStatement メソッドは、その文をプリコンパイル用としてデータベースに送ります。ドライバによっては、プリコンパイルをサポートしていないものがあります。この場合、PreparedStatement オブジェクトが実行されるまで、文はデータベースに送られません。これはユーザーに直接的な影響はありませんが、どのメソッドが、どの SQLException オブジェクトをスローするかに関して影響があります。
 
返される PreparedStatement オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY の型で、CONCUR_READ_ONLY の並行処理レベルを持ちます。作成された結果セットの保持機能は、getHoldability() を呼び出すことで判断できます。
sql - 次を含めることができる SQL 文: 1 つ以上の '?' IN パラメータプレースホルダーPreparedStatement オブジェクトSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合CallableStatement prepareCall(String sql) throws SQLException
CallableStatement オブジェクトを生成します。CallableStatement オブジェクトは、その IN と OUT パラメータを設定するメソッドとストアドプロシージャーの呼び出しを実行するメソッドを提供します。
注: このメソッドは、ストアドプロシージャー呼び出し文を処理するために最適化されています。ドライバによっては、prepareCall メソッドが実行されるときにデータベースに呼び出し文を送るものがあります。その他のドライバは、CallableStatement オブジェクトが実行されるまで待ちます。これはユーザーに直接的な影響はありませんが、どのメソッドが特定の SQLException をスローするかに関して影響があります。
 
返される CallableStatement オブジェクトを使って作成された結果セットは、デフォルトでは、TYPE_FORWARD_ONLY の型で、CONCUR_READ_ONLY の並行処理レベルを持ちます。作成された結果セットの保持機能は、getHoldability() を呼び出すことで判断できます。
sql - 1 つ以上の「?」パラメータプレースホルダーを含めることができる SQL 文。通常この文は、JBDC 呼び出しのエスケープ構文を使用して指定されるCallableStatement オブジェクトSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合String nativeSQL(String sql) throws SQLException
sql - 1 つ以上の「?」パラメータプレースホルダーを含めることができる SQL 文SQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合void setAutoCommit(boolean autoCommit)
                   throws SQLException
commit メソッドまたは rollback メソッドへの呼び出しによって終了されるトランザクションにグループ化されます。デフォルトでは、新しい接続は自動コミットモードです。
 コミットは、文が完了すると発生します。文が完了するタイミングは、SQL 文の種類によって異なります。
CallableStatement オブジェクトの場合、または複数の結果を返す文の場合、文は関連するすべての結果セットが閉じられて、すべての更新カウントと出力パラメータが取得されると完了します。
注: トランザクションの途中でこのメソッドが呼び出され、自動コミットモードが変更されると、そのトランザクションはコミットされます。setAutoCommit が呼び出され、自動コミットモードが変更されないと、呼び出しによる操作は行われません。
autoCommit - 自動コミットモードを有効にする場合は true、無効にする場合は falseSQLException - データベースアクセスエラーが発生した場合、分散トランザクションに関係している間に setAutoCommit(true) が呼び出された場合、またはこのメソッドがクローズされた接続について呼び出された場合getAutoCommit()boolean getAutoCommit()
                      throws SQLException
Connection オブジェクトの現在の自動コミットモードを取得します。Connection オブジェクトの現在の自動コミットモードの状態SQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合setAutoCommit(boolean)void commit()
            throws SQLException
Connection オブジェクトが現在保持するデータベースロックをすべて解除します。このメソッドは自動コミットモードが無効になっているときしか使用できません。SQLException - データベースアクセスエラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、またはこの Connection オブジェクトが自動コミットモードである場合setAutoCommit(boolean)void rollback()
              throws SQLException
Connection オブジェクトが保持しているすべてのデータベースロックを解除します。このメソッドは自動コミットモードが無効になっているときしか使用できません。SQLException - データベースアクセスエラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、またはこの Connection オブジェクトが自動コミットモードである場合setAutoCommit(boolean)void close()
           throws SQLException
Connection オブジェクトのデータベースと JDBC リソースを解除します。
 
すでにクローズされた Connection オブジェクトで close メソッドを呼び出すと、操作は行われません。
 
close メソッドの呼び出し前に、アプリケーションでアクティブなトランザクションを明示的にコミットまたはロールバックすることを強くお勧めします。close メソッドが呼び出され、かつアクティブなトランザクションが存在する場合、その結果は実装で定義されたものになります。
 
close、インタフェース: AutoCloseableSQLException - データベースアクセスエラーが発生した場合は SQLExceptionboolean isClosed()
                 throws SQLException
Connection オブジェクトがクローズされているかどうかを取得します。接続は、close メソッドが呼び出されるか、特定の致命的エラーが発生した場合にクローズされます。このメソッドは、Connection.close メソッドが呼び出されたあとに呼び出された場合にだけ true を返すことが保証されています。
 このメソッドは通常、データベースへの接続が有効か無効かを判定するために呼び出すことはできません。一般のクライアントでは、操作を実行したときにスローされる例外をキャッチすることにより、接続が無効であると判定します。
Connection オブジェクトがクローズされている場合は true、まだオープンの状態の場合は falseSQLException - データベースアクセスエラーが発生した場合DatabaseMetaData getMetaData() throws SQLException
Connection オブジェクトが接続を表すデータベースに関するメタデータを格納する DatabaseMetaData オブジェクトを取得します。メタデータは、データベースのテーブル、サポートしている SQL 文法、ストアドプロシージャー、およびこの接続の能力などについての情報を含んでいます。Connection オブジェクトの DatabaseMetaData オブジェクトSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合void setReadOnly(boolean readOnly)
                 throws SQLException
注: トランザクションの途中では、このメソッドを呼び出すことはできません。
readOnly - true の場合は読み込み専用モードを使用可能にし、false の場合は使用不可にするSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続について呼び出された場合、またはこのメソッドがトランザクション中に呼び出された場合boolean isReadOnly()
                   throws SQLException
Connection オブジェクトが読み込み専用モードかどうかを取得します。Connection オブジェクトが読み込み専用モードの場合は true、そうでない場合は falseSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合は SQLExceptionvoid setCatalog(String catalog) throws SQLException
Connection オブジェクトのデータベースに作業のためのサブスペースを選択するために、カタログ名を設定します。
 ドライバがカタログをサポートしていない場合は、この要求を無視します。
setCatalog の呼び出しは、前に作成または準備された Statement オブジェクトには影響を与えません。Connection メソッド prepareStatement または prepareCall が呼び出されたときに DBMS 準備操作がただちに実行されるかどうかは、実装で定義されます。移植性を最大限にするには、Statement の作成または準備の前に setCatalog を呼び出す必要があります。
catalog - 作業のためのカタログ名。カタログは、この Connection オブジェクトのデータベースのサブスペースSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合getCatalog()String getCatalog() throws SQLException
Connection オブジェクトの現在のカタログ名を取得します。nullSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合setCatalog(java.lang.String)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()int getTransactionIsolation()
                            throws SQLException
Connection オブジェクトの現在のトランザクション遮断レベルを取得します。Connection.TRANSACTION_READ_UNCOMMITTED、Connection.TRANSACTION_READ_COMMITTED、Connection.TRANSACTION_REPEATABLE_READ、Connection.TRANSACTION_SERIALIZABLE、または Connection.TRANSACTION_NONE。SQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合setTransactionIsolation(int)SQLWarning getWarnings() throws SQLException
Connection オブジェクトに関する呼び出しによって報告される最初の警告を取得します。2 つ以上の警告がある場合、後続の警告は最初の警告にチェーンされ、直前に取得された警告の SQLWarning.getNextWarning メソッドを呼び出すことによって取得されます。
 
このメソッドはクローズされた接続の呼び出しには使用しません。使用すると SQLException がスローされます。
注: 後続の警告は、この SQLWarning にチェーンされます。
SQLWarning オブジェクト。ない場合は nullSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合SQLWarningvoid clearWarnings()
                   throws SQLException
Connection オブジェクトに関して報告されたすべての警告をクリアします。このメソッドを呼び出したあと、この Connection オブジェクトに対する新しい警告が通知されるまで、getWarnings は null を返します。SQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合は SQLExceptionStatement 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_UPDATABLEResultSet オブジェクトを生成する新しい Statement オブジェクトSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型および並行処理を示す ResultSet 定数でない場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型と結果セットの並行処理でサポートされない場合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_UPDATABLEResultSet オブジェクトを生成するSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型および並行処理を示す ResultSet 定数でない場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型と結果セットの並行処理でサポートされない場合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_UPDATABLECallableStatement オブジェクト。指定された型および並行処理で ResultSet オブジェクトを生成するSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型および並行処理を示す ResultSet 定数でない場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型と結果セットの並行処理でサポートされない場合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 ドライバがこのメソッドをサポートしない場合setTypeMap(java.util.Map<java.lang.String, java.lang.Class<?>>)void setTypeMap(Map<String,Class<?>> map) throws SQLException
Connection オブジェクトの型マップとして、指定された TypeMap オブジェクトをインストールします。型マップは、SQL 構造化型および個別の型のカスタムマッピングに使用されます。
JDBC ドライバは TypeMap の内部コピーを作成することがあるため、setMap を呼び出す前に、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 ドライバがこのメソッドをサポートしない場合getTypeMap()void setHoldability(int holdability)
                    throws SQLException
Connection オブジェクトを使用して生成された ResultSet オブジェクトのデフォルトの保持機能を指定された保持機能へ変更します。ResultSet オブジェクトのデフォルトの保持機能は、DatabaseMetaData.getResultSetHoldability() を呼び出すことで調べることができます。holdability - ResultSet 保持機能定数。ResultSet.HOLD_CURSORS_OVER_COMMIT または ResultSet.CLOSE_CURSORS_AT_COMMITSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが保持機能を示す ResultSet 定数ではない場合SQLFeatureNotSupportedException - 指定された保持機能がサポートされていない場合getHoldability()、DatabaseMetaData.getResultSetHoldability()、ResultSetint getHoldability()
                   throws SQLException
Connection オブジェクトを使用して生成された ResultSet オブジェクトの現在の保持機能を取得します。ResultSet.HOLD_CURSORS_OVER_COMMIT または ResultSet.CLOSE_CURSORS_AT_COMMITSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合setHoldability(int)、DatabaseMetaData.getResultSetHoldability()、ResultSetSavepoint setSavepoint() throws SQLException
Savepoint オブジェクトを返します。
アクティブなトランザクションの外部で setSavepoint が呼び出されると、この新しく作成されたセーブポイントでトランザクションが開始されます。
Savepoint オブジェクトSQLException - データベースアクセスエラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、またはこの Connection オブジェクトが現在自動コミットモードである場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合SavepointSavepoint setSavepoint(String name) throws SQLException
Savepoint オブジェクトを返します。
アクティブなトランザクションの外部で setSavepoint が呼び出されると、この新しく作成されたセーブポイントでトランザクションが開始されます。
name - セーブポイントの名前を格納する StringSavepoint オブジェクトSQLException - データベースアクセスエラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、またはこの Connection オブジェクトが現在自動コミットモードである場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合Savepointvoid rollback(Savepoint savepoint) throws SQLException
Savepoint オブジェクトが設定されたあとに行われたすべての変更を元に戻します。
 このメソッドは自動コミットが無効のときにだけ使用します。
savepoint - ロールバックする Savepoint オブジェクトSQLException - データベースアクセスエラーが発生した場合、分散トランザクションに関係している間にこのメソッドが呼び出された場合、このメソッドがクローズされた接続について呼び出された場合、Savepoint オブジェクトが有効でなくなった場合、またはこの Connection オブジェクトが現在自動コミットモードである場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合Savepoint, rollback()void releaseSavepoint(Savepoint savepoint) throws SQLException
Savepoint オブジェクトと以降の Savepoint オブジェクトを削除します。削除されたあとでセーブポイントを参照すると SQLException がスローされます。savepoint - 削除する Savepoint オブジェクトSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定された Savepoint オブジェクトが現在のトランザクションで有効なセーブポイントでない場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合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_UPDATABLEresultSetHoldability - ResultSet 定数。ResultSet.HOLD_CURSORS_OVER_COMMITまたは ResultSet.CLOSE_CURSORS_AT_COMMITResultSet オブジェクトを生成する新しい Statement オブジェクトSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型、並行処理、および保持機能を示す ResultSet 定数でない場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型、結果セットの保持機能、および結果セットの並行処理でサポートされない場合ResultSetPreparedStatement 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_UPDATABLEresultSetHoldability - ResultSet 定数。ResultSet.HOLD_CURSORS_OVER_COMMITまたは ResultSet.CLOSE_CURSORS_AT_COMMITPreparedStatement オブジェクト。指定された型、並行処理、および保持機能で ResultSet オブジェクトを生成するSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型、並行処理、および保持機能を示す ResultSet 定数でない場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型、結果セットの保持機能、および結果セットの並行処理でサポートされない場合ResultSetCallableStatement 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_UPDATABLEresultSetHoldability - ResultSet 定数。ResultSet.HOLD_CURSORS_OVER_COMMITまたは ResultSet.CLOSE_CURSORS_AT_COMMITCallableStatement オブジェクト。指定された型、並行処理、および保持機能で ResultSet オブジェクトを生成するSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが型、並行処理、および保持機能を示す ResultSet 定数でない場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合、またはこのメソッドが指定された結果セットの型、結果セットの保持機能、および結果セットの並行処理でサポートされない場合ResultSetPreparedStatement 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_KEYSPreparedStatement オブジェクト。自動生成キーを返す機能を持つSQLException - データベースアクセスエラーが発生した場合、このメソッドがクローズされた接続に対して呼び出された場合、または指定されたパラメータが自動生成キーを返すかどうかを示す Statement 定数でない場合SQLFeatureNotSupportedException - JDBC ドライバが定数 Statement.RETURN_GENERATED_KEYS を指定したこのメソッドをサポートしない場合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 ドライバがこのメソッドをサポートしない場合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 ドライバがこのメソッドをサポートしない場合Clob createClob() throws SQLException
Clob インタフェースを実装しているオブジェクトを構築します。返されるオブジェクトは、初期状態ではデータが格納されていません。データを Clob に追加するには、Clob インタフェースの setAsciiStream、setCharacterStream、setString の各メソッドを使用できます。Clob インタフェースを実装しているオブジェクトSQLException - Clob インタフェースを実装するオブジェクトを構築できなかった場合、このメソッドがクローズされた接続に対して呼び出された場合、またはデータベースアクセスエラーが発生した場合SQLFeatureNotSupportedException - JDBC ドライバがこのデータ型をサポートしない場合Blob createBlob() throws SQLException
Blob インタフェースを実装しているオブジェクトを構築します。返されるオブジェクトは、初期状態ではデータが格納されていません。データを Blob に追加するには、Blob インタフェースの setBinaryStream および setBytes メソッドを使用できます。Blob インタフェースを実装しているオブジェクトSQLException - Blob インタフェースを実装するオブジェクトを構築できなかった場合、このメソッドがクローズされた接続に対して呼び出された場合、またはデータベースアクセスエラーが発生した場合SQLFeatureNotSupportedException - JDBC ドライバがこのデータ型をサポートしない場合NClob createNClob() throws SQLException
NClob インタフェースを実装しているオブジェクトを構築します。返されるオブジェクトは、初期状態ではデータが格納されていません。データを NClob に追加するには、NClob インタフェースの setAsciiStream、setCharacterStream、setString の各メソッドを使用できます。NClob インタフェースを実装しているオブジェクトSQLException - NClob インタフェースを実装するオブジェクトを構築できなかった場合、このメソッドがクローズされた接続に対して呼び出された場合、またはデータベースアクセスエラーが発生した場合SQLFeatureNotSupportedException - JDBC ドライバがこのデータ型をサポートしない場合SQLXML createSQLXML() throws SQLException
SQLXML インタフェースを実装しているオブジェクトを構築します。返されるオブジェクトは、初期状態ではデータが格納されていません。データを SQLXML オブジェクトに追加するには、SQLXML インタフェースの createXmlStreamWriter オブジェクトと setString メソッドを使用できます。SQLXML インタフェースを実装しているオブジェクトSQLException - SQLXML インタフェースを実装するオブジェクトを構築できなかった場合、このメソッドがクローズされた接続に対して呼び出された場合、またはデータベースアクセスエラーが発生した場合SQLFeatureNotSupportedException - JDBC ドライバがこのデータ型をサポートしない場合boolean isValid(int timeout)
                throws SQLException
接続を検証するためにドライバによって送信されるクエリーは、現在のトランザクションのコンテキストで実行されます。
timeout - 接続を検証するために使用したデータベース操作の完了を待機する秒数。操作の完了前にタイムアウト期間が過ぎると、このメソッドは false を返す。値 0 は、タイムアウトがこのデータベース操作に適用されないことを示す
 SQLException - timeout に指定された値が 0 より小さい場合DatabaseMetaData.getClientInfoProperties()void setClientInfo(String name, String value) throws SQLClientInfoException
アプリケーションでは、ドライバでサポートされるクライアント情報プロパティー、および各プロパティーに指定できる最大長を判断するために、DatabaseMetaData.getClientInfoProperties メソッドを使用できます。
 
ドライバは、指定された値をデータベース内の適切な場所に格納します。たとえば、特殊なレジスタ、セッションパラメータ、システムテーブルの列などです。効率性の観点から、次に文が実行または準備されるまで、ドライバはデータベースへの値の設定を保留することがあります。クライアント情報をデータベース内の適切な場所に格納すること以外に、これらのメソッドが接続の動作を変更することはありません。これらのメソッドに指定された値は、検討、診断、およびデバッグの目的のみに使用されます。
指定されたクライアント情報名がドライバで認識されない場合、ドライバは警告を生成します。
このメソッドに指定された値がプロパティーの最大長よりも長い場合、ドライバは値を切り詰め、警告を生成するか、または SQLClientInfoException を生成する場合があります。ドライバが SQLClientInfoException を生成した場合、指定された値は接続に設定されていません。
 
標準のクライアント情報プロパティーを次に示します。ドライバでこれらのプロパティーをサポートする必要はありませんが、いずれかの標準プロパティーによって記述できるクライアント情報プロパティーをサポートしている場合は、その標準プロパティー名を使用するようにしてください。
name - 設定するクライアント情報プロパティーの名前value - クライアント情報プロパティーに設定する値。値が null の場合、指定されたプロパティーの現在の値がクリアされる
 SQLClientInfoException - データベースサーバーでクライアント情報値の設定中にデータベースサーバーがエラーを返した場合、またはこのメソッドがクローズされた接続について呼び出された場合
void setClientInfo(Properties properties) throws SQLClientInfoException
Properties オブジェクトには、設定されるクライアント情報プロパティーの名前と値が格納されています。プロパティーリストに含まれるクライアント情報プロパティーのセットによって、接続のクライアント情報プロパティーの現在のセットが置き換えられます。現在接続で設定されているプロパティーがプロパティーリストに存在しない場合、そのプロパティーはクリアされます。空のプロパティーリストを指定すると、接続のすべてのプロパティーがクリアされます。詳細は、setClientInfo (String, String) を参照してください。
 
いずれかのクライアント情報プロパティーの設定時にエラーが発生した場合、SQLClientInfoException がスローされます。SQLClientInfoException には、設定されなかったクライアント情報プロパティーを示す情報が格納されています。一部のデータベースでは、複数のクライアント情報プロパティーを原子的に設定することが許可されないため、クライアント情報の状態は不明です。そのようなデータベースでは、エラーが起きる前に 1 つ以上のプロパティーが設定された可能性があります。
 
properties - 設定するクライアント情報プロパティーのリスト
 SQLClientInfoException - データベースサーバーでクライアント情報値の設定中にデータベースサーバーがエラーを返した場合、またはこのメソッドがクローズされた接続について呼び出された場合
setClientInfo(String, String)String getClientInfo(String name) throws SQLException
アプリケーションでは、ドライバでサポートされるクライアント情報プロパティーを判断するために、DatabaseMetaData.getClientInfoProperties メソッドを使用できます。
 
name - 取得するクライアント情報プロパティーの名前
 SQLException - データベースからクライアント情報値のフェッチ中にデータベースサーバーがエラーを返した場合、またはこのメソッドがクローズされた接続について呼び出された場合
DatabaseMetaData.getClientInfoProperties()Properties getClientInfo() throws SQLException
Properties オブジェクト。
 SQLException - データベースからクライアント情報値のフェッチ中にデータベースサーバーがエラーを返した場合、またはこのメソッドがクローズされた接続について呼び出された場合
Array createArrayOf(String typeName, Object[] elements) throws SQLException
注: createArrayOf を使用して、プリミティブデータ型にマッピングする配列オブジェクトを生成する場合、Array オブジェクトがそのプリミティブデータ型の配列と Object の配列のどちらであるかは実装で定義されます。
 
注: JDBC ドライバは、Object 配列の要素を、Object の指定されたクラスについて java.sql.Types で定義されたデフォルトの JDBC SQL 型にマッピングします。デフォルトのマッピングは、JDBC 仕様の付録 B で指定されています。結果として得られる JDBC 型が指定された typeName に適した型ではない場合、SQLException がスローされるか、それともドライバが結果として得られる変換をサポートするかについては、実装で定義されています。
typeName - 配列の要素がマッピングされる型の SQL 名。typeName はデータベース固有の名前で、組み込み型、ユーザー定義型、またはこのデータベースでサポートされる標準 SQL 型の名前のこと。これは、Array.getBaseTypeName で返される値elements - 返されるオブジェクトを生成する要素SQLException - データベースエラーが発生した場合、JDBC 型が typeName に適しておらず、かつ変換がサポートされていない場合、typeName が null の場合、またはこのメソッドがクローズされた接続に対して呼び出された場合SQLFeatureNotSupportedException - JDBC ドライバがこのデータ型をサポートしない場合Struct createStruct(String typeName, Object[] attributes) throws SQLException
typeName - この Struct オブジェクトがマッピングされる SQL 構造化型の SQL 型名。typeName は、このデータベースに定義されたユーザー定義型の名前。これは、Struct.getSQLTypeName で返される値。attributes - 返されるオブジェクトを生成する属性SQLException - データベースエラーが発生した場合、typeName が null の場合、またはこのメソッドがクローズされた接続について呼び出された場合SQLFeatureNotSupportedException - JDBC ドライバがこのデータ型をサポートしない場合void setSchema(String schema) throws SQLException
ドライバがスキーマをサポートしていない場合は、この要求を無視します。
setSchema の呼び出しは、前に作成または準備された Statement オブジェクトには影響を与えません。Connection メソッド prepareStatement または prepareCall が呼び出されたときに DBMS 準備操作がただちに実行されるかどうかは、実装で定義されます。移植性を最大限にするには、Statement の作成または準備の前に setSchema を呼び出す必要があります。
schema - 作業のためのスキーマ名SQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合getSchema()String getSchema() throws SQLException
Connection オブジェクトの現在のスキーマ名を取得します。nullSQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた接続について呼び出された場合setSchema(java.lang.String)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 の呼び出しを拒否した場合SecurityManager.checkPermission(java.security.Permission), Executorvoid setNetworkTimeout(Executor executor, int milliseconds) throws SQLException
Connection または 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 ドライバがこのメソッドをサポートしない場合SecurityManager.checkPermission(java.security.Permission), Statement.setQueryTimeout(int), getNetworkTimeout(), abort(java.util.concurrent.Executor), Executorint getNetworkTimeout()
                      throws SQLException
SQLException がスローされます。SQLException - データベースアクセスエラーが発生した場合、またはこのメソッドがクローズされた次のものについて呼び出された場合:  ConnectionSQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合setNetworkTimeout(java.util.concurrent.Executor, int) バグまたは機能を送信 
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.