public interface Statement extends Wrapper, AutoCloseable
静的SQL文を実行し、作成された結果を返すために使用されるオブジェクトです。
デフォルトでは、Statementオブジェクトごとに、同時に開くことができるResultSetオブジェクトは1つだけです。したがって、1つのResultSetオブジェクトの読込みが、別の読込みにより割り込まれると、各々は異なったStatementオブジェクトによって生成されたことになります。Statementインタフェースのすべての実行メソッドは、文の現在のResultSetオブジェクトでオープンされているものが存在すれば、それを暗黙にクローズします。
| 修飾子と型 | フィールドと説明 |
|---|---|
static int |
CLOSE_ALL_RESULTS
getMoreResultsが呼び出されたときに、直前までオープンされていたすべてのResultSetオブジェクトがクローズされることを示す定数です。 |
static int |
CLOSE_CURRENT_RESULT
getMoreResultsが呼び出されたときに、現在のResultSetオブジェクトがクローズされることを示す定数です。 |
static int |
EXECUTE_FAILED
バッチ文の実行中にエラーが発生したことを示す定数です。
|
static int |
KEEP_CURRENT_RESULT
getMoreResultsが呼び出されたときに、現在のResultSetオブジェクトがクローズされないことを示す定数です。 |
static int |
NO_GENERATED_KEYS
生成されたキーを検索可能にしないことを示す定数です。
|
static int |
RETURN_GENERATED_KEYS
生成されたキーを検索可能にすることを示す定数です。
|
static int |
SUCCESS_NO_INFO
バッチ文が正常に実行されたが、影響を受けた行数が不明なことを示す定数です。
|
| 修飾子と型 | メソッドと説明 |
|---|---|
void |
addBatch(String sql)
この
Statementオブジェクトの現在のコマンドのリストに、指定されたSQLコマンドを追加します。 |
void |
cancel()
DBMSおよびドライバの両方がSQL文の終了をサポートする場合に、この
Statementオブジェクトを取り消します。 |
void |
clearBatch()
この
Statementオブジェクトの現在のSQLコマンド・リストを空にします。 |
void |
clearWarnings()
この
Statementオブジェクトに関して報告されたすべての警告をクリアします。 |
void |
close()
自動的にクローズされるときに
StatementオブジェクトのデータベースとJDBCリソースが解放されるのを待つのではなく、ただちにそれらを解放します。 |
void |
closeOnCompletion()
このStatementに依存するすべての結果セットがクローズされたときにこの
Statementがクローズされることを示します。 |
boolean |
execute(String sql)
複数の結果を返す可能性のある指定されたSQL文を実行します。
|
boolean |
execute(String sql, int autoGeneratedKeys)
複数の結果を返す可能性のある指定されたSQL文を実行し、すべての自動生成キーを検索可能にするかどうかについてドライバに通知します。
|
boolean |
execute(String sql, int[] columnIndexes)
複数の結果を返す可能性のある指定されたSQL文を実行し、指定された配列で示された自動生成キーを検索可能にすることをドライバに通知します。
|
boolean |
execute(String sql, String[] columnNames)
複数の結果を返す可能性のある指定されたSQL文を実行し、指定された配列で示された自動生成キーを検索可能にすることをドライバに通知します。
|
int[] |
executeBatch()
コマンドのバッチをデータベースに送信して実行し、すべてのコマンドが正常に実行されると、更新カウントの配列を返します。
|
default long[] |
executeLargeBatch()
コマンドのバッチをデータベースに送信して実行し、すべてのコマンドが正常に実行されると、更新カウントの配列を返します。
|
default long |
executeLargeUpdate(String sql)
指定されたSQL文を実行します。SQL文は、
INSERT文、UPDATE文、DELETE文、またはSQL DDL文のような何も返さないSQL文の場合があります。 |
default long |
executeLargeUpdate(String sql, int autoGeneratedKeys)
指定されたSQL文を実行し、この
Statementオブジェクトによって生成された自動生成キーを検索可能にするかどうかについて指定されたフラグでドライバに通知します。 |
default long |
executeLargeUpdate(String sql, int[] columnIndexes)
指定されたSQL文を実行し、指定された配列で示された自動生成キーを検索可能にすることをドライバに通知します。
|
default long |
executeLargeUpdate(String sql, String[] columnNames)
指定されたSQL文を実行し、指定された配列で示された自動生成キーを検索可能にすることをドライバに通知します。
|
ResultSet |
executeQuery(String sql)
単一の
ResultSetオブジェクトを返す、指定されたSQL文を実行します。 |
int |
executeUpdate(String sql)
指定されたSQL文を実行します。SQL文は、
INSERT文、UPDATE文、DELETE文、またはSQL DDL文のような何も返さないSQL文の場合があります。 |
int |
executeUpdate(String sql, int autoGeneratedKeys)
指定されたSQL文を実行し、この
Statementオブジェクトによって生成された自動生成キーを検索可能にするかどうかについて指定されたフラグでドライバに通知します。 |
int |
executeUpdate(String sql, int[] columnIndexes)
指定されたSQL文を実行し、指定された配列で示された自動生成キーを検索可能にすることをドライバに通知します。
|
int |
executeUpdate(String sql, String[] columnNames)
指定されたSQL文を実行し、指定された配列で示された自動生成キーを検索可能にすることをドライバに通知します。
|
Connection |
getConnection()
この
Statementオブジェクトを生成したConnectionオブジェクトを取得します。 |
int |
getFetchDirection()
この
Statementオブジェクトから生成された結果セットのデフォルトである、データベース表から行をフェッチする方向を取得します。 |
int |
getFetchSize()
この
Statementオブジェクトから生成されたResultSetオブジェクトのデフォルトのフェッチ・サイズである、結果セットの行数を取得します。 |
ResultSet |
getGeneratedKeys()
この
Statementオブジェクトを実行した結果として作成された自動生成キーを取得します。 |
default long |
getLargeMaxRows()
この
Statementオブジェクトによって生成されるResultSetオブジェクトに含めることのできる最大行数を取得します。 |
default long |
getLargeUpdateCount()
更新カウントとして現在の結果を取得します。結果が
ResultSetオブジェクトであるか、または結果がない場合は -1を返します。 |
int |
getMaxFieldSize()
この
Statementオブジェクトによって生成されるResultSetオブジェクトの文字およびバイナリの各列値に対し返される最大バイト数を取得します。 |
int |
getMaxRows()
この
Statementオブジェクトによって生成されるResultSetオブジェクトに含めることのできる最大行数を取得します。 |
boolean |
getMoreResults()
Statementオブジェクトの次の結果に移動します。この結果がResultSetオブジェクトの場合はtrueを返し、getResultSetメソッドで得られた現在のResultSetオブジェクトをすべて暗黙にクローズします。 |
boolean |
getMoreResults(int current)
Statementオブジェクトの次の結果に移動します。指定されたフラグによって指定された命令に従ってすべての現在のResultSetオブジェクトを処理し、次の結果がResultSetオブジェクトの場合はtrueを返します。 |
int |
getQueryTimeout()
ドライバが
Statementオブジェクトの実行を待つ秒数を取得します。 |
ResultSet |
getResultSet()
ResultSetオブジェクトとして現在の結果を取得します。 |
int |
getResultSetConcurrency()
この
Statementオブジェクトから生成されたResultSetオブジェクトの結果セットの並行処理を取得します。 |
int |
getResultSetHoldability()
この
Statementオブジェクトから生成されたResultSetオブジェクトの結果セットの保持機能を取得します。 |
int |
getResultSetType()
この
Statementオブジェクトから生成されたResultSetオブジェクトの結果セットのタイプを取得します。 |
int |
getUpdateCount()
更新カウントとして現在の結果を取得します。結果が
ResultSetオブジェクトであるか、または結果がない場合は -1を返します。 |
SQLWarning |
getWarnings()
この
Statementオブジェクトに関する呼出しによって報告される最初の警告を取得します。 |
boolean |
isClosed()
この
Statementオブジェクトがクローズされているかどうかを取得します。 |
boolean |
isCloseOnCompletion()
このStatementに依存するすべての結果セットがクローズされたときにこの
Statementがクローズされるかどうかを示す値を取得します。 |
boolean |
isPoolable()
Statementがプール可能かどうかを示す値を返します。 |
void |
setCursorName(String name)
後続の
Statementオブジェクトのexecuteメソッドによって使用されるSQLカーソル名を指定されたStringに設定します。 |
void |
setEscapeProcessing(boolean enable)
エスケープの処理をオンまたはオフに設定します。
|
void |
setFetchDirection(int direction)
Statementオブジェクトを使用して作成されたResultSetオブジェクトの行が処理される方向についてのヒントをドライバに提供します。 |
void |
setFetchSize(int rows)
この
Statementで作成されたResultSetオブジェクトでより多くの行が必要なときにデータベースから取り出す必要がある行数についてのヒントをJDBCドライバに提供します。 |
default void |
setLargeMaxRows(long max)
この
Statementオブジェクトで作成された任意のResultSetオブジェクトが含むことのできる最大行数の制限値を、指定された数に設定します。 |
void |
setMaxFieldSize(int max)
この
Statementオブジェクトによって生成されるResultSetオブジェクトの文字およびバイナリの各列値に対し返される最大バイト数の制限を設定します。 |
void |
setMaxRows(int max)
この
Statementオブジェクトで作成された任意のResultSetオブジェクトが含むことのできる最大行数の制限値を、指定された数に設定します。 |
void |
setPoolable(boolean poolable)
Statementをプールすること、またはプールしないことを要求します。 |
void |
setQueryTimeout(int seconds)
ドライバが
Statementオブジェクトの実行を待つ秒数を、指定された秒数に設定します。 |
isWrapperFor, unwrapstatic final int CLOSE_CURRENT_RESULT
getMoreResultsが呼び出されたときに、現在のResultSetオブジェクトがクローズされることを示す定数です。static final int KEEP_CURRENT_RESULT
getMoreResultsが呼び出されたときに、現在のResultSetオブジェクトがクローズされないことを示す定数です。static final int CLOSE_ALL_RESULTS
getMoreResultsが呼び出されたときに、直前までオープンされていたすべてのResultSetオブジェクトがクローズされることを示す定数です。static final int SUCCESS_NO_INFO
static final int EXECUTE_FAILED
static final int RETURN_GENERATED_KEYS
static final int NO_GENERATED_KEYS
ResultSet executeQuery(String sql) throws SQLException
ResultSetオブジェクトを返す、指定されたSQL文を実行します。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - データベースに送られるSQL文。通常静的SQL SELECT文ResultSetオブジェクト。nullにはならないSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、指定されたSQL文が単一のResultSetオブジェクト以外の何も生成しない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときint executeUpdate(String sql) throws SQLException
INSERT文、UPDATE文、DELETE文、またはSQL DDL文のような何も返さないSQL文の場合があります。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - SQL INSERT文、UPDATE文、またはDELETE文のようなSQLデータ操作言語(DML)文、あるいはDDL文のような何も返さないSQL文SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または指定されたSQL文がResultSetオブジェクトを生成した場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときvoid close()
throws SQLException
StatementオブジェクトのデータベースとJDBCリソースが解放されるのを待つのではなく、ただちにそれらを解放します。データベースのリソースを占有するのを避けるために、通常は、作業が終了したらすぐにリソースを解放するようにしてください。
すでにクローズされたStatementオブジェクトでcloseメソッドを呼び出すと、操作は行われません。
注: Statementオブジェクトがクローズされるとき、その現在のResultSetオブジェクトが存在すれば、それもクローズされます。
close、インタフェース: AutoCloseableSQLException - データベース・アクセス・エラーが発生した場合int getMaxFieldSize()
throws SQLException
Statementオブジェクトによって生成されるResultSetオブジェクトの文字およびバイナリの各列値に対し返される最大バイト数を取得します。この制限値は、BINARY、VARBINARY、LONGVARBINARY、CHAR、VARCHAR、NCHAR、NVARCHAR、LONGNVARCHAR、およびLONGVARCHARの各列だけに適用されます。制限値を超えたデータは通知なしに破棄されます。SQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合setMaxFieldSize(int)void setMaxFieldSize(int max)
throws SQLException
Statementオブジェクトによって生成されるResultSetオブジェクトの文字およびバイナリの各列値に対し返される最大バイト数の制限を設定します。この制限値は、BINARY、VARBINARY、LONGVARBINARY、CHAR、VARCHAR、NCHAR、NVARCHAR、LONGNVARCHAR、およびLONGVARCHARの各フィールドだけに適用されます。制限値を超えたデータは通知なしに破棄されます。移植性を最大限にするには、256より大きい値を使用します。max - バイト単位の新しい列サイズの制限値。ゼロは無制限を意味するSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または条件max >= 0が満たされない場合getMaxFieldSize()int getMaxRows()
throws SQLException
Statementオブジェクトによって生成されるResultSetオブジェクトに含めることのできる最大行数を取得します。制限値を超えた行は通知なしに除外されます。Statementオブジェクトによって生成されるResultSetオブジェクトの現在の最大行数。ゼロは無制限を意味するSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合setMaxRows(int)void setMaxRows(int max)
throws SQLException
Statementオブジェクトで作成された任意のResultSetオブジェクトが含むことのできる最大行数の制限値を、指定された数に設定します。制限値を超えた行は通知なしに除外されます。max - 新しい最大行数の制限値。ゼロは無制限を意味するSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または条件max >= 0が満たされない場合getMaxRows()void setEscapeProcessing(boolean enable)
throws SQLException
ConnectionおよびDataSourceのプロパティescapeProcessingを使用して、デフォルトのエスケープ処理の動作を変更できます。true (デフォルト)を指定すると、すべてのStatementオブジェクトのエスケープ処理が有効になります。falseを指定すると、すべてのStatementオブジェクトのエスケープ処理が無効になります。setEscapeProcessingメソッドを使用して、個々のStatementオブジェクトに対するエスケープ処理の動作を指定できます。
注: 用意された文は、通常呼び出す前に構文解析されているので、PreparedStatementsオブジェクトに対するエスケープ処理を無効にしても効果はありません。
enable - エスケープ処理を有効にする場合はtrue、無効にする場合はfalseSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合int getQueryTimeout()
throws SQLException
Statementオブジェクトの実行を待つ秒数を取得します。この制限を超えると、SQLExceptionがスローされます。SQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合setQueryTimeout(int)void setQueryTimeout(int seconds)
throws SQLException
Statementオブジェクトの実行を待つ秒数を、指定された秒数に設定します。デフォルトでは、実行中の文が完了するまでに許可されている時間に制限はありません。この制限時間を経過すると、SQLTimeoutExceptionがスローされます。JDBCドライバは、この制限をexecute、executeQuery、executeUpdateの各メソッドに適用する必要があります。
注: JDBCドライバ実装は、この制限をResultSetメソッドに適用することもあります(詳細は、ドライバ・ベンダーのマニュアルを参照してください)。
注: Statementバッチ処理の場合、これは、タイム・アウトがaddBatchメソッドによって追加された個々のSQLコマンドに適用されるか、executeBatchメソッドによって呼び出されたSQLコマンドのバッチ全体に適用されるかに関して定義される実装です(詳細については、ドライバ・ベンダーのドキュメントを参照してください)。
seconds - 新しいクエリー・タイムアウトの制限値の秒数。ゼロは無制限を意味するSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または条件seconds >= 0が満たされない場合getQueryTimeout()void cancel()
throws SQLException
Statementオブジェクトを取り消します。このメソッドは、1つのスレッドが別のスレッドによって実行中の文を取り消すのに使用できます。SQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合SQLWarning getWarnings() throws SQLException
Statementオブジェクトに関する呼出しによって報告される最初の警告を取得します。後続のStatementオブジェクトの警告は、このSQLWarningオブジェクトにチェーンされます。
警告チェーンは、文が(再)実行されるたびに自動的にクリアされます。このメソッドはクローズされたStatementオブジェクトの呼出しには使用しません。使用するとSQLExceptionがスローされます。
注: ResultSetオブジェクトを処理中の場合、ResultSetオブジェクトの読込みに関連する警告はそのオブジェクトを生成したStatementオブジェクトではなくすべてResultSetオブジェクトにチェーンされます。
SQLWarningオブジェクト。警告がない場合はnullSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合void clearWarnings()
throws SQLException
Statementオブジェクトに関して報告されたすべての警告をクリアします。このメソッドを呼び出したあと、このStatementオブジェクトに対する新しい警告が通知されるまで、getWarningsメソッドはnullを返します。SQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合void setCursorName(String name) throws SQLException
Statementオブジェクトのexecuteメソッドによって使用されるSQLカーソル名を指定されたStringに設定します。この名前は、SQLで位置決めされた更新文または削除文で使用され、この文で生成されたResultSetオブジェクト内の現在の行を識別できます。データベースが位置決めされた更新または削除をサポートしていない場合、このメソッドは何も実行しません。更新をサポートする適切な遮断レベルをカーソルが確実に持つためには、カーソルのSELECT文をSELECT FOR UPDATEという形式にしてください。FOR UPDATEが存在しない場合、位置決めされた更新は失敗します。
注: 定義により、位置決めされた更新または削除の実行は、位置決めに使用中のResultSetオブジェクトを生成したStatementオブジェクトとは異なるStatementオブジェクトによって実行される必要があります。さらに、カーソル名は接続内で一意にする必要があります。
name - 新しいカーソル名。接続内で一意にする必要があるSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合boolean execute(String sql) throws SQLException
executeメソッドは、SQL文を実行し最初の結果の形式を示します。次に、getResultSetまたはgetUpdateCountメソッドを使用して結果を取得します。そして、getMoreResultsにより引き続き任意の結果の取得(複数可)に移動します。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - 任意のSQL文ResultSetオブジェクトの場合はtrue。更新カウントであるか、または結果がない場合はfalseSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、またはメソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときgetResultSet(), getUpdateCount(), getMoreResults()ResultSet getResultSet() throws SQLException
ResultSetオブジェクトとして現在の結果を取得します。このメソッドは、1つの結果につき1回だけ呼び出す必要があります。ResultSetオブジェクトとしての現在の結果。結果が更新カウントであるか、または結果がない場合はnullSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合execute(java.lang.String)int getUpdateCount()
throws SQLException
ResultSetオブジェクトであるか、または結果がない場合は -1を返します。このメソッドは、1つの結果につき1回だけ呼び出す必要があります。ResultSetオブジェクトであるか、または結果がない場合は -1SQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合execute(java.lang.String)boolean getMoreResults()
throws SQLException
Statementオブジェクトの次の結果に移動します。この結果がResultSetオブジェクトの場合はtrueを返し、getResultSetメソッドで得られた現在のResultSetオブジェクトをすべて暗黙にクローズします。
次に該当する場合、結果はありません。
// stmt is a Statement object
((stmt.getMoreResults() == false) && (stmt.getUpdateCount() == -1))
ResultSetオブジェクトの場合はtrue。更新カウントであるか、または結果がない場合はfalseSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合execute(java.lang.String)void setFetchDirection(int direction)
throws SQLException
Statementオブジェクトを使用して作成されたResultSetオブジェクトの行が処理される方向についてのヒントをドライバに提供します。デフォルト値はResultSet.FETCH_FORWARDです。
このメソッドは、このStatementオブジェクトによって生成される結果セットのデフォルトのフェッチ方向を設定します。各結果セットは、それ自身のフェッチ方向を取得および設定するための独自のメソッドを持ちます。
direction - 行を処理する初期方向SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または指定された方向がResultSet.FETCH_FORWARD、ResultSet.FETCH_REVERSE、またはResultSet.FETCH_UNKNOWNのどれでもない場合getFetchDirection()int getFetchDirection()
throws SQLException
Statementオブジェクトから生成された結果セットのデフォルトである、データベース表から行をフェッチする方向を取得します。このStatementオブジェクトがsetFetchDirectionメソッドを呼び出してフェッチ方向を設定していない場合、戻り値は実装に依存します。Statementオブジェクトから生成された結果セットのデフォルトのフェッチ方向SQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合setFetchDirection(int)void setFetchSize(int rows)
throws SQLException
Statementで作成されたResultSetオブジェクトでより多くの行が必要なときにデータベースから取り出す必要がある行数についてのヒントをJDBCドライバに提供します。指定された値が0の場合、ヒントは無視されます。デフォルト値はゼロです。rows - フェッチする行数SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または条件rows>= 0が満たされない場合。getFetchSize()int getFetchSize()
throws SQLException
Statementオブジェクトから生成されたResultSetオブジェクトのデフォルトのフェッチ・サイズである、結果セットの行数を取得します。このStatementオブジェクトがsetFetchSizeメソッドを呼び出してフェッチ・サイズを設定していない場合、戻り値は実装に依存します。Statementオブジェクトから生成された結果セットのデフォルトのフェッチ・サイズSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合setFetchSize(int)int getResultSetConcurrency()
throws SQLException
Statementオブジェクトから生成されたResultSetオブジェクトの結果セットの並行処理を取得します。ResultSet.CONCUR_READ_ONLYまたはResultSet.CONCUR_UPDATABLESQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合int getResultSetType()
throws SQLException
Statementオブジェクトから生成されたResultSetオブジェクトの結果セットのタイプを取得します。ResultSet.TYPE_FORWARD_ONLY、ResultSet.TYPE_SCROLL_INSENSITIVE、ResultSet.TYPE_SCROLL_SENSITIVEのいずれかSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合void addBatch(String sql) throws SQLException
Statementオブジェクトの現在のコマンドのリストに、指定されたSQLコマンドを追加します。このリストのコマンドはexecuteBatchメソッドを呼び出すことにより、バッチとして実行できます。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - 通常はSQL INSERT文またはUPDATE文SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、ドライバがバッチ更新をサポートしない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合executeBatch(), DatabaseMetaData.supportsBatchUpdates()void clearBatch()
throws SQLException
Statementオブジェクトの現在のSQLコマンド・リストを空にします。
SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、またはドライバがバッチ更新をサポートしない場合addBatch(java.lang.String), DatabaseMetaData.supportsBatchUpdates()int[] executeBatch()
throws SQLException
int要素は、バッチ内のコマンドに対応して順序付けられます。つまり、バッチに追加された順序に従って順序付けられます。executeBatchメソッドによって返される配列内の要素は、次のいずれか1つに該当します。
SUCCESS_NO_INFOの値 -- コマンドが正常に処理されたが、影響を受けた行数が不明なことを示します
バッチ更新内のコマンドの1つが正常に実行できなかった場合、このメソッドはBatchUpdateExceptionをスローし、JDBCドライバはバッチ内の残りのコマンドの処理を継続することも、中止することもできます。ただし、ドライバの動作は特定のDBMSと一貫性を保つ必要があり、常にコマンドの処理を継続するか、あるいは継続しないかのどちらかになります。失敗後、ドライバが処理を継続する場合は、BatchUpdateException.getUpdateCountsメソッドで返される配列には、バッチ内のコマンドと同じ数の要素が格納され、それらの要素の1つ以上が次に該当します。
EXECUTE_FAILEDの値 -- 失敗したコマンドが正常に実行されたことを示し、コマンドが失敗したあとに、ドライバがコマンドの処理を継続した場合に限り発生します。
Java 2 SDK, Standard Edition, Version 1.3では、使用できる実装および戻り値が修正されて、BatchUpdateExceptionオブジェクトがスローされた後にバッチ更新内のコマンドの処理を継続できるオプションが用意されています。
SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、またはドライバがバッチ文をサポートしない場合。データベースに送信されたコマンドの1つが正常に実行されなかった場合や、結果セットを返そうとした場合は、BatchUpdateException (SQLExceptionのサブクラス)がスローされる。SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときaddBatch(java.lang.String), DatabaseMetaData.supportsBatchUpdates()Connection getConnection() throws SQLException
Statementオブジェクトを生成したConnectionオブジェクトを取得します。SQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合boolean getMoreResults(int current)
throws SQLException
Statementオブジェクトの次の結果に移動します。指定されたフラグによって指定された命令に従ってすべての現在のResultSetオブジェクトを処理し、次の結果がResultSetオブジェクトの場合はtrueを返します。
次に該当する場合、結果はありません。
// stmt is a Statement object
((stmt.getMoreResults(current) == false) && (stmt.getUpdateCount() == -1))
current - getResultSetメソッドを使用して取得した現在のResultSetオブジェクトに対する処理を示す次のいずれかのStatement定数。Statement.CLOSE_CURRENT_RESULT、Statement.KEEP_CURRENT_RESULT、またはStatement.CLOSE_ALL_RESULTSResultSetオブジェクトの場合はtrue。更新カウントであるか、または結果がない場合はfalseSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または指定された引数がStatement.CLOSE_CURRENT_RESULT、Statement.CLOSE_ALL_RESULTS、またはStatement.KEEP_CURRENT_RESULTのどれでもない場合SQLFeatureNotSupportedException - DatabaseMetaData.supportsMultipleOpenResultsがfalseを返し、引数としてStatement.KEEP_CURRENT_RESULTまたはStatement.CLOSE_ALL_RESULTSが指定されている場合。execute(java.lang.String)ResultSet getGeneratedKeys() throws SQLException
Statementオブジェクトを実行した結果として作成された自動生成キーを取得します。このStatementオブジェクトがキーを生成しなかった場合は、空のResultSetオブジェクトが返されます。
注: 自動生成キーを表す列が指定されなかった場合、JDBCドライバ実装では、自動生成キーを表すのに最適な列を判断します。
Statementオブジェクトの実行で生成された自動生成キーを含むResultSetオブジェクトSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合int executeUpdate(String sql, int autoGeneratedKeys) throws SQLException
Statementオブジェクトによって生成された自動生成キーを検索可能にするかどうかについて指定されたフラグでドライバに通知します。SQL文がINSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはフラグを無視します。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - SQL INSERT文、UPDATE文、またはDELETE文のようなSQLデータ操作言語(DML)文、あるいはDDL文のような何も返さないSQL文autoGeneratedKeys - 自動生成キーを検索可能にするかどうかを示すフラグ。定数Statement.RETURN_GENERATED_KEYSまたはStatement.NO_GENERATED_KEYSSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、指定されたSQL文がResultSetオブジェクトを返す場合、指定された定数が許可されているものでない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバが定数Statement.RETURN_GENERATED_KEYSを指定したこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときint executeUpdate(String sql, int[] columnIndexes) throws SQLException
INSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの配列を無視します。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - SQL INSERT文、UPDATE文、またはDELETE文のようなSQLデータ操作言語(DML)文、あるいはDDL文のような何も返さないSQL文columnIndexes - 挿入された行から返される列を示す列インデックスの配列SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、SQL文がResultSetオブジェクトを返す場合、このメソッドに指定された2番目の引数が、有効な列インデックスを要素とするint配列ではない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときint executeUpdate(String sql, String[] columnNames) throws SQLException
INSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの配列を無視します。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - SQL INSERT文、UPDATE文、またはDELETE文のようなSQLデータ操作言語(DML)文、あるいはDDL文のような何も返さないSQL文columnNames - 挿入された行から返される列の名前の配列INSERT文、UPDATE文、DELETE文の場合は行数。何も返さないSQL文の場合は0SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、SQL文がResultSetオブジェクトを返す場合、このメソッドに指定された2番目の引数が、有効な列名を要素とするString配列ではない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときboolean execute(String sql, int autoGeneratedKeys) throws SQLException
INSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの信号を無視します。
いくつかの(一般的でない)状況では、単一のSQL文が複数の結果セットあるいは更新カウントを返すことがあります。複数の結果を返すことがあることがわかっているストアド・プロシージャを実行中、または未知のSQL文字列を動的に実行中でないかぎり、通常はこれを無視できます。
executeメソッドは、SQL文を実行し最初の結果の形式を示します。次に、getResultSetまたはgetUpdateCountメソッドを使用して結果を取得します。そして、getMoreResultsにより引き続き任意の結果の取得(複数可)に移動します。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - 任意のSQL文autoGeneratedKeys - getGeneratedKeysメソッドを使用して、自動生成キーを検索可能にするかどうかを示す定数。Statement.RETURN_GENERATED_KEYSまたはStatement.NO_GENERATED_KEYSResultSetオブジェクトの場合はtrue。更新カウントであるか、または結果がない場合はfalseSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、このメソッドに指定された2番目のパラメータがStatement.RETURN_GENERATED_KEYSまたはStatement.NO_GENERATED_KEYSでない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバが定数Statement.RETURN_GENERATED_KEYSを指定したこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときgetResultSet(), getUpdateCount(), getMoreResults(), getGeneratedKeys()boolean execute(String sql, int[] columnIndexes) throws SQLException
INSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの配列を無視します。
いくつかの(一般的でない)状況では、単一のSQL文が複数の結果セットあるいは更新カウントを返すことがあります。複数の結果を返すことがあることがわかっているストアド・プロシージャを実行中、または未知のSQL文字列を動的に実行中でないかぎり、通常はこれを無視できます。
executeメソッドは、SQL文を実行し最初の結果の形式を示します。次に、getResultSetまたはgetUpdateCountメソッドを使用して結果を取得します。そして、getMoreResultsにより引き続き任意の結果の取得(複数可)に移動します。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - 任意のSQL文columnIndexes - getGeneratedKeysメソッドの呼出しによって検索可能にする挿入行の列インデックスの配列ResultSetオブジェクトの場合はtrue。更新カウントであるか、または結果がない場合はfalseSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、このメソッドに渡されたint配列の要素が有効な列インデックスでない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときgetResultSet(), getUpdateCount(), getMoreResults()boolean execute(String sql, String[] columnNames) throws SQLException
INSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの配列を無視します。
いくつかの(一般的でない)状況では、単一のSQL文が複数の結果セットあるいは更新カウントを返すことがあります。複数の結果を返すことがあることがわかっているストアド・プロシージャを実行中、または未知のSQL文字列を動的に実行中でないかぎり、通常はこれを無視できます。
executeメソッドは、SQL文を実行し最初の結果の形式を示します。次に、getResultSetまたはgetUpdateCountメソッドを使用して結果を取得します。そして、getMoreResultsにより引き続き任意の結果の取得(複数可)に移動します。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
sql - 任意のSQL文columnNames - getGeneratedKeysメソッドの呼出しによって検索可能にする挿入行の列名の配列ResultSetオブジェクトの場合はtrue。更新カウントであるか、または結果がない場合はfalseSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、このメソッドに渡されたString配列の要素が有効な列名でない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときgetResultSet(), getUpdateCount(), getMoreResults(), getGeneratedKeys()int getResultSetHoldability()
throws SQLException
Statementオブジェクトから生成されたResultSetオブジェクトの結果セットの保持機能を取得します。ResultSet.HOLD_CURSORS_OVER_COMMITまたはResultSet.CLOSE_CURSORS_AT_COMMITSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合boolean isClosed()
throws SQLException
Statementオブジェクトがクローズされているかどうかを取得します。Statementでcloseメソッドが呼び出されるか、または自動的にクローズされる場合、このオブジェクトはクローズされます。Statementオブジェクトがクローズされている場合はtrue、まだオープンの状態の場合はfalseSQLException - データベース・アクセス・エラーが発生した場合void setPoolable(boolean poolable)
throws SQLException
Statementをプールすること、またはプールしないことを要求します。指定された値は、文のプール実装のヒントで、アプリケーションで文がプールされる必要があるかどうかを示します。ヒントが使用されるかどうかは、文のプール管理プログラムによって異なります。
文のプール可能な値は、ドライバによって実装される内部文キャッシュと、アプリケーション・サーバーやその他のアプリケーションによって実装される外部文キャッシュの両方に適用されます。
デフォルトで、Statementは作成時にプール可能ではありませんが、PreparedStatementおよびCallableStatementは作成時にプール可能です。
poolable - trueの場合は文をプールすること、falseの場合は文をプールしないことを要求する
SQLException - このメソッドがクローズされたStatementで呼び出された場合
boolean isPoolable()
throws SQLException
Statementがプール可能かどうかを示す値を返します。
Statementがプール可能である場合はtrue、そうでない場合はfalse
SQLException - このメソッドがクローズされたStatementで呼び出された場合
setPoolable(boolean)void closeOnCompletion()
throws SQLException
Statementがクローズされることを示します。Statementの実行によって結果セットが生成されない場合、このメソッドは無効です。
注: closeOnCompletionを複数回呼び出してもこのStatementへの効果は切り替わりません。ただし、closeOnCompletionの呼出しは、文のその後の実行と、現在開いていて依存されている結果セットがある文の両方に影響します。
SQLException - このメソッドがクローズされたStatementで呼び出された場合boolean isCloseOnCompletion()
throws SQLException
Statementがクローズされるかどうかを示す値を取得します。Statementが、依存するすべての結果セットがクローズされたときにクローズされる場合はtrue、そうでない場合はfalseSQLException - このメソッドがクローズされたStatementで呼び出された場合default long getLargeUpdateCount()
throws SQLException
ResultSetオブジェクトであるか、または結果がない場合は -1を返します。このメソッドは、1つの結果につき1回だけ呼び出す必要があります。
返される行数がInteger.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。
デフォルト実装はUnsupportedOperationExceptionをスローします
ResultSetオブジェクトであるか、または結果がない場合は -1SQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合execute(java.lang.String)default void setLargeMaxRows(long max)
throws SQLException
Statementオブジェクトで作成された任意のResultSetオブジェクトが含むことのできる最大行数の制限値を、指定された数に設定します。制限値を超えた行は通知なしに除外されます。
行制限がInteger.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。
デフォルト実装はUnsupportedOperationExceptionをスローします
max - 新しい最大行数の制限値。ゼロは無制限を意味するSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または条件max >= 0が満たされない場合getMaxRows()default long getLargeMaxRows()
throws SQLException
Statementオブジェクトによって生成されるResultSetオブジェクトに含めることのできる最大行数を取得します。制限値を超えた行は通知なしに除外されます。
返される行制限がInteger.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。
デフォルト実装は0を返します
Statementオブジェクトによって生成されるResultSetオブジェクトの現在の最大行数。ゼロは無制限を意味するSQLException - データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたStatementについて呼び出された場合setMaxRows(int)default long[] executeLargeBatch()
throws SQLException
long要素は、バッチ内のコマンドに対応して順序付けられます。つまり、コマンドがバッチに追加された順序に従って順序付けられます。executeLargeBatchメソッドによって返される配列内の要素は、次のいずれかである可能性があります。
SUCCESS_NO_INFOの値 -- コマンドが正常に処理されたが、影響を受けた行数が不明なことを示します
バッチ更新内のコマンドの1つが正常に実行できなかった場合、このメソッドはBatchUpdateExceptionをスローし、JDBCドライバはバッチ内の残りのコマンドの処理を継続することも、中止することもできます。ただし、ドライバの動作は特定のDBMSと一貫性を保つ必要があり、常にコマンドの処理を継続するか、あるいは継続しないかのどちらかになります。失敗後、ドライバが処理を継続する場合は、BatchUpdateException.getLargeUpdateCountsメソッドで返される配列にバッチ内のコマンドと同じ数の要素が格納され、それらの要素の1つ以上が次に該当します。
EXECUTE_FAILEDの値 -- 失敗したコマンドが正常に実行されたことを示し、コマンドが失敗したあとに、ドライバがコマンドの処理を継続した場合に限り発生します。
返される行数がInteger.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。
デフォルト実装はUnsupportedOperationExceptionをスローします
SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、またはドライバがバッチ文をサポートしない場合。データベースに送信されたコマンドの1つが正常に実行されなかった場合や、結果セットを返そうとした場合は、BatchUpdateException (SQLExceptionのサブクラス)がスローされる。SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときaddBatch(java.lang.String), DatabaseMetaData.supportsBatchUpdates()default long executeLargeUpdate(String sql) throws SQLException
INSERT文、UPDATE文、DELETE文、またはSQL DDL文のような何も返さないSQL文の場合があります。
返される行数がInteger.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
デフォルト実装はUnsupportedOperationExceptionをスローします
sql - SQL INSERT文、UPDATE文、またはDELETE文のようなSQLデータ操作言語(DML)文、あるいはDDL文のような何も返さないSQL文SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、または指定されたSQL文がResultSetオブジェクトを生成した場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときdefault long executeLargeUpdate(String sql, int autoGeneratedKeys) throws SQLException
Statementオブジェクトによって生成された自動生成キーを検索可能にするかどうかについて指定されたフラグでドライバに通知します。SQL文がINSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはフラグを無視します。
返される行数がInteger.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
デフォルト実装はSQLFeatureNotSupportedExceptionをスローします
sql - SQL INSERT文、UPDATE文、またはDELETE文のようなSQLデータ操作言語(DML)文、あるいはDDL文のような何も返さないSQL文autoGeneratedKeys - 自動生成キーを検索可能にするかどうかを示すフラグ。定数Statement.RETURN_GENERATED_KEYSまたはStatement.NO_GENERATED_KEYSSQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、指定されたSQL文がResultSetオブジェクトを返す場合、指定された定数が許可されているものでない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバが定数Statement.RETURN_GENERATED_KEYSを指定したこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときdefault long executeLargeUpdate(String sql, int[] columnIndexes) throws SQLException
INSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの配列を無視します。
返される行数がInteger.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
デフォルト実装はSQLFeatureNotSupportedExceptionをスローします
sql - SQL INSERT文、UPDATE文、またはDELETE文のようなSQLデータ操作言語(DML)文、あるいはDDL文のような何も返さないSQL文columnIndexes - 挿入された行から返される列を示す列インデックスの配列SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、SQL文がResultSetオブジェクトを返す場合、このメソッドに指定された2番目の引数が、有効な列インデックスを要素とするint配列ではない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたときdefault long executeLargeUpdate(String sql, String[] columnNames) throws SQLException
INSERT文でない場合、または自動生成キーを返すことができるSQL文でない場合(そのような文のリストはベンダー固有)、ドライバはこの配列を無視します。
返される行数がInteger.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。
注: このメソッドをPreparedStatementまたはCallableStatementに対して呼び出すことはできません。
デフォルト実装はSQLFeatureNotSupportedExceptionをスローします
sql - SQL INSERT文、UPDATE文、またはDELETE文のようなSQLデータ操作言語(DML)文、あるいはDDL文のような何も返さないSQL文columnNames - 挿入された行から返される列の名前の配列INSERT文、UPDATE文、DELETE文の場合は行数。何も返さないSQL文の場合は0SQLException - データベース・アクセス・エラーが発生した場合、このメソッドがクローズされたStatementで呼び出された場合、SQL文がResultSetオブジェクトを返す場合、このメソッドに指定された2番目の引数が、有効な列名を要素とするString配列ではない場合、メソッドがPreparedStatementまたはCallableStatementで呼び出された場合SQLFeatureNotSupportedException - JDBCドライバがこのメソッドをサポートしない場合SQLTimeoutException - ドライバが、setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中のStatementの取消しを試みたとき バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.