- すべてのスーパー・インタフェース:
- AutoCloseable,- Statement,- Wrapper
- 既知のすべてのサブインタフェース:
- CallableStatement
public interface PreparedStatement extends Statement
SQL文は、プリコンパイルされ、PreparedStatementオブジェクトに格納されます。 その後、このオブジェクトは、この文を複数回効率的に実行するために使用できます。 
 
ノート: INパラメータ値を設定する設定機能メソッド(setShort、setStringなど)は、入力パラメータの定義されたSQL型と互換のある型を指定する必要があります。 たとえば、INパラメータがINTEGERというSQL型の場合、setIntメソッドを使用するようにしてください。 
 
任意のパラメータ型変換が必要な場合は、目的のSQL型を指定してsetObjectメソッドを使用するようにしてください。
 
 パラメータ設定の例を次に示します。conはアクティブな接続を表します。
 
   BigDecimal sal = new BigDecimal("153833.00");
   PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES
                                     SET SALARY = ? WHERE ID = ?");
   pstmt.setBigDecimal(1, sal);
   pstmt.setInt(2, 110592);
 - 導入されたバージョン:
- 1.1
- 関連項目:
- Connection.prepareStatement(java.lang.String)、- ResultSet
- 
フィールドのサマリーインタフェース java.sql.Statementで宣言されたフィールドCLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO
- 
メソッドのサマリー修飾子と型 メソッド 説明 voidaddBatch()このPreparedStatementオブジェクトのコマンドのバッチに、パラメータのセットを追加します。voidclearParameters()現在のパラメータ値をすぐにクリアします。booleanexecute()このPreparedStatementオブジェクトの、あらゆる種類のSQL文を実行します。default longexecuteLargeUpdate()このPreparedStatementオブジェクトのSQL文を実行します。それはSQLデータ操作言語(DML)文(INSERT文、UPDATE文、DELETE文など)であるか、DDL文のような何も返さないSQL文でなければなりません。ResultSetexecuteQuery()このPreparedStatementオブジェクトのSQLクエリーを実行し、そのクエリーによって生成されたResultSetオブジェクトを返します。intexecuteUpdate()このPreparedStatementオブジェクトのSQL文を実行します。それはSQLデータ操作言語(DML)文(INSERT文、UPDATE文、DELETE文など)であるか、DDL文のような何も返さないSQL文でなければなりません。ResultSetMetaDatagetMetaData()このPreparedStatementオブジェクトが実行されるときに返されるResultSetオブジェクトの列に関する情報を格納するResultSetMetaDataオブジェクトを取得します。ParameterMetaDatagetParameterMetaData()このPreparedStatementオブジェクトのパラメータの数、型、およびプロパティを取得します。voidsetArray(int parameterIndex, Array x)指定されたパラメータを指定されたjava.sql.Arrayオブジェクトに設定します。voidsetAsciiStream(int parameterIndex, InputStream x)指定されたパラメータを指定された入力ストリームに設定します。voidsetAsciiStream(int parameterIndex, InputStream x, int length)指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。voidsetAsciiStream(int parameterIndex, InputStream x, long length)指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。voidsetBigDecimal(int parameterIndex, BigDecimal x)指定されたパラメータを、指定されたjava.math.BigDecimal値に設定します。voidsetBinaryStream(int parameterIndex, InputStream x)指定されたパラメータを指定された入力ストリームに設定します。voidsetBinaryStream(int parameterIndex, InputStream x, int length)指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。voidsetBinaryStream(int parameterIndex, InputStream x, long length)指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。voidsetBlob(int parameterIndex, InputStream inputStream)指定されたパラメータをInputStreamオブジェクトに設定します。voidsetBlob(int parameterIndex, InputStream inputStream, long length)指定されたパラメータをInputStreamオブジェクトに設定します。voidsetBlob(int parameterIndex, Blob x)指定されたパラメータを指定されたjava.sql.Blobオブジェクトに設定します。voidsetBoolean(int parameterIndex, boolean x)指定されたパラメータを指定されたJavaのboolean値に設定します。voidsetByte(int parameterIndex, byte x)指定されたパラメータを指定されたJavaのbyte値に設定します。voidsetBytes(int parameterIndex, byte[] x)指定されたパラメータを指定されたJavaのバイト配列に設定します。voidsetCharacterStream(int parameterIndex, Reader reader)指定されたパラメータを指定されたReaderオブジェクトに設定します。voidsetCharacterStream(int parameterIndex, Reader reader, int length)指定されたパラメータを、指定された文字数である指定されたReaderオブジェクトに設定します。voidsetCharacterStream(int parameterIndex, Reader reader, long length)指定されたパラメータを、指定された文字数である指定されたReaderオブジェクトに設定します。voidsetClob(int parameterIndex, Reader reader)指定されたパラメータをReaderオブジェクトに設定します。voidsetClob(int parameterIndex, Reader reader, long length)指定されたパラメータをReaderオブジェクトに設定します。voidsetClob(int parameterIndex, Clob x)指定されたパラメータを指定されたjava.sql.Clobオブジェクトに設定します。voidsetDate(int parameterIndex, Date x)アプリケーションを実行している仮想マシンのデフォルトのタイムゾーンを使用して、指定されたパラメータを指定されたjava.sql.Date値に設定します。voidsetDate(int parameterIndex, Date x, Calendar cal)指定されたCalendarオブジェクトを使用して、指定されたパラメータを指定されたjava.sql.Date値に設定します。voidsetDouble(int parameterIndex, double x)指定されたパラメータを指定されたJavaのdouble値に設定します。voidsetFloat(int parameterIndex, float x)指定されたパラメータを指定されたJavaのfloat値に設定します。voidsetInt(int parameterIndex, int x)指定されたパラメータを指定されたJavaのint値に設定します。voidsetLong(int parameterIndex, long x)指定されたパラメータを指定されたJavaのlong値に設定します。voidsetNCharacterStream(int parameterIndex, Reader value)指定されたパラメータをReaderオブジェクトに設定します。voidsetNCharacterStream(int parameterIndex, Reader value, long length)指定されたパラメータをReaderオブジェクトに設定します。voidsetNClob(int parameterIndex, Reader reader)指定されたパラメータをReaderオブジェクトに設定します。voidsetNClob(int parameterIndex, Reader reader, long length)指定されたパラメータをReaderオブジェクトに設定します。voidsetNClob(int parameterIndex, NClob value)指定されたパラメータをjava.sql.NClobオブジェクトに設定します。voidsetNString(int parameterIndex, String value)指定されたパラメータを指定されたStringオブジェクトに設定します。voidsetNull(int parameterIndex, int sqlType)指定されたパラメータをSQLNULLに設定します。voidsetNull(int parameterIndex, int sqlType, String typeName)指定されたパラメータをSQLNULLに設定します。voidsetObject(int parameterIndex, Object x)指定されたパラメータの値を、指定されたオブジェクトを使用して設定します。voidsetObject(int parameterIndex, Object x, int targetSqlType)指定されたパラメータの値を、指定されたオブジェクトで設定します。voidsetObject(int parameterIndex, Object x, int targetSqlType, int scaleOrLength)指定されたパラメータの値を、指定されたオブジェクトで設定します。default voidsetObject(int parameterIndex, Object x, SQLType targetSqlType)指定されたパラメータの値を、指定されたオブジェクトで設定します。default voidsetObject(int parameterIndex, Object x, SQLType targetSqlType, int scaleOrLength)指定されたパラメータの値を、指定されたオブジェクトで設定します。voidsetRef(int parameterIndex, Ref x)指定されたパラメータを、指定されたREF(<structured-type>)値に設定します。voidsetRowId(int parameterIndex, RowId x)指定されたパラメータを指定されたjava.sql.RowIdオブジェクトに設定します。voidsetShort(int parameterIndex, short x)指定されたパラメータを指定されたJavaのshort値に設定します。voidsetSQLXML(int parameterIndex, SQLXML xmlObject)指定されたパラメータを指定されたjava.sql.SQLXMLオブジェクトに設定します。voidsetString(int parameterIndex, String x)指定されたパラメータを指定されたJavaのString値に設定します。voidsetTime(int parameterIndex, Time x)指定されたパラメータを、指定されたjava.sql.Time値に設定します。voidsetTime(int parameterIndex, Time x, Calendar cal)指定されたCalendarオブジェクトを使用して、指定されたパラメータを指定されたjava.sql.Time値に設定します。voidsetTimestamp(int parameterIndex, Timestamp x)指定されたパラメータを、指定されたjava.sql.Timestamp値に設定します。voidsetTimestamp(int parameterIndex, Timestamp x, Calendar cal)指定されたCalendarオブジェクトを使用して、指定されたパラメータを指定されたjava.sql.Timestamp値に設定します。voidsetUnicodeStream(int parameterIndex, InputStream x, int length)Deprecated.setCharacterStreamを使用voidsetURL(int parameterIndex, URL x)指定されたパラメータを、指定されたjava.net.URL値に設定します。インタフェース java.sql.Statementで宣言されたメソッドaddBatch, cancel, clearBatch, clearWarnings, close, closeOnCompletion, enquoteIdentifier, enquoteLiteral, enquoteNCharLiteral, execute, execute, execute, execute, executeBatch, executeLargeBatch, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, isSimpleIdentifier, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout
- 
メソッドの詳細- 
executeQueryResultSet executeQuery() throws SQLExceptionこのPreparedStatementオブジェクトのSQLクエリーを実行し、そのクエリーによって生成されたResultSetオブジェクトを返します。- 戻り値:
- クエリーによって作成されたデータを含むResultSetオブジェクト。nullにはならない
- 例外:
- SQLException- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、またはSQL文が- ResultSetオブジェクトを返さない場合
- SQLTimeoutException- ドライバが、- setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中の- Statementの取消しを試みたとき
 
- 
executeUpdateint executeUpdate() throws SQLExceptionこのPreparedStatementオブジェクトのSQL文を実行します。それはSQLデータ操作言語(DML)文(INSERT文、UPDATE文、DELETE文など)であるか、DDL文のような何も返さないSQL文でなければなりません。- 戻り値:
- (1) SQLデータ操作言語(DML)文の場合は行数、(2)何も返さないSQL文の場合は0
- 例外:
- SQLException- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、またはSQL文が- ResultSetオブジェクトを返した場合
- SQLTimeoutException- ドライバが、- setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中の- Statementの取消しを試みたとき
 
- 
setNullvoid setNull(int parameterIndex, int sqlType) throws SQLException指定されたパラメータをSQLNULLに設定します。ノート: パラメータのSQLの型を指定する必要があります。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- sqlType-- java.sql.Typesで定義されるSQL型コード
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException-- sqlTypeのデータ型が、- ARRAY、- BLOB、- CLOB、- DATALINK、- JAVA_OBJECT、- NCHAR、- NCLOB、- NVARCHAR、- LONGNVARCHAR、- REF、- ROWID、- SQLXML、または- STRUCTで、JDBCドライバがこのデータ型をサポートしていない場合
 
- 
setBooleanvoid setBoolean(int parameterIndex, boolean x) throws SQLException指定されたパラメータを指定されたJavaのboolean値に設定します。 データベースに送るときに、ドライバはこれをSQLBITまたはBOOLEAN値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setBytevoid setByte(int parameterIndex, byte x) throws SQLException指定されたパラメータを指定されたJavaのbyte値に設定します。 データベースに送るときに、ドライバはこれをSQLTINYINT値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setShortvoid setShort(int parameterIndex, short x) throws SQLException指定されたパラメータを指定されたJavaのshort値に設定します。 データベースに送るときに、ドライバはこれをSQLSMALLINT値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setIntvoid setInt(int parameterIndex, int x) throws SQLException指定されたパラメータを指定されたJavaのint値に設定します。 データベースに送るときに、ドライバはこれをSQLINTEGER値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setLongvoid setLong(int parameterIndex, long x) throws SQLException指定されたパラメータを指定されたJavaのlong値に設定します。 データベースに送るときに、ドライバはこれをSQLBIGINT値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setFloatvoid setFloat(int parameterIndex, float x) throws SQLException指定されたパラメータを指定されたJavaのfloat値に設定します。 データベースに送るときに、ドライバはこれをSQLREAL値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setDoublevoid setDouble(int parameterIndex, double x) throws SQLException指定されたパラメータを指定されたJavaのdouble値に設定します。 データベースに送るときに、ドライバはこれをSQLDOUBLE値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setBigDecimalvoid setBigDecimal(int parameterIndex, BigDecimal x) throws SQLException指定されたパラメータを、指定されたjava.math.BigDecimal値に設定します。 データベースに送るときに、ドライバはこれをSQLNUMERIC値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setStringvoid setString(int parameterIndex, String x) throws SQLException指定されたパラメータを指定されたJavaのString値に設定します。 データベースに送るときに、ドライバはこれをSQLVARCHARまたはLONGVARCHAR値(ドライバのVARCHAR値の制限に対する引数のサイズに依存)に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setBytesvoid setBytes(int parameterIndex, byte[] x) throws SQLException指定されたパラメータを指定されたJavaのバイト配列に設定します。 データベースに送るときに、ドライバはこれをSQLVARBINARYまたはLONGVARBINARY(ドライバのVARBINARY値の制限に対する引数のサイズに依存)に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setDatevoid setDate(int parameterIndex, Date x) throws SQLExceptionアプリケーションを実行している仮想マシンのデフォルトのタイムゾーンを使用して、指定されたパラメータを指定されたjava.sql.Date値に設定します。 データベースに送るときに、ドライバはこれをSQLDATE値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setTimevoid setTime(int parameterIndex, Time x) throws SQLException指定されたパラメータを、指定されたjava.sql.Time値に設定します。 データベースに送るときに、ドライバはこれをSQLTIME値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setTimestampvoid setTimestamp(int parameterIndex, Timestamp x) throws SQLException指定されたパラメータを、指定されたjava.sql.Timestamp値に設定します。 データベースに送るときに、ドライバはこれをSQLTIMESTAMP値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setAsciiStreamvoid setAsciiStream(int parameterIndex, InputStream x, int length) throws SQLException指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。LONGVARCHARパラメータに非常に大きなASCII値が入力されるときには、java.io.InputStreamを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。 JDBCドライバは、データをASCIIからデータベースのchar形式に変換します。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- ASCIIパラメータ値を含むJava入力ストリーム
- length- ストリームのバイト数
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
setUnicodeStream@Deprecated(since="1.2")void setUnicodeStream(int parameterIndex, InputStream x, int length) throws SQLExceptionDeprecated.setCharacterStreamを使用指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。LONGVARCHARパラメータに非常に大きなUnicode値が入力されるときには、java.io.InputStreamオブジェクトを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。 JDBCドライバは、データをUnicodeからデータベースのchar形式に変換します。 Unicodeストリームのバイト形式は、Java仮想マシン仕様に定義されているJava UTF-8である必要があります。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- Unicodeパラメータ値を含む- java.io.InputStreamオブジェクト
- length- ストリームのバイト数
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
 
- 
setBinaryStreamvoid setBinaryStream(int parameterIndex, InputStream x, int length) throws SQLException指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。LONGVARBINARYパラメータに非常に大きなバイナリ値が入力されるときには、java.io.InputStreamオブジェクトを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- バイナリ・パラメータ値を含むJava入力ストリーム
- length- ストリームのバイト数
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
 
- 
clearParametersvoid clearParameters() throws SQLException現在のパラメータ値をすぐにクリアします。通常、文を繰返し使用するために、パラメータ値は強制的に残されます。 パラメータ値を設定すると、前の値は自動的にクリアされます。 しかし、現在のパラメータ値によって使用されたリソースをただちに解放した方が役に立つ場合があります。これは、 clearParametersメソッドを呼び出して実行することができます。- 例外:
- SQLException- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementについて呼び出された場合
 
- 
setObjectvoid setObject(int parameterIndex, Object x, int targetSqlType) throws SQLException指定されたパラメータの値を、指定されたオブジェクトで設定します。 このメソッドは、setObject(int parameterIndex, Object x, int targetSqlType, int scaleOrLength)に似ていますが、scaleに0を仮定している点が異なります。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- 入力パラメータ値を含むオブジェクト
- targetSqlType- データベースに送られる(java.sql.Typesで定義される) SQL型
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされたPreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバが指定されたtargetSqlTypeをサポートしない場合
- 関連項目:
- Types
 
- 
setObjectvoid setObject(int parameterIndex, Object x) throws SQLException指定されたパラメータの値を、指定されたオブジェクトを使用して設定します。 JDBCの仕様では、Javaの Object型からSQL型への標準マッピングを規定しています。 指定された引数は、データベースに送られる前に、対応するSQL型に変換されます。このメソッドは、ドライバ固有のJava型を使用して、データベース固有の抽象データ型を渡すために使用できます。 オブジェクトがインタフェース SQLDataを実装するクラスのインスタンスである場合、JDBCドライバはSQLData.writeSQLメソッドを呼び出して、そのオブジェクトをSQLデータ・ストリームへ書き込む必要があります。 また、オブジェクトがRef、Blob、Clob、NClob、Struct、java.net.URL、RowId、SQLXML、またはArrayを実装するクラスのオブジェクトである場合、ドライバはこのオブジェクトを対応するSQL型の値としてデータベースに渡すべきです。ノート: すべてのデータベースで、バックエンドに対する型のないNullの送信が許可されるわけではありません。 移植性を最大限にするには、 setObject(int parameterIndex, Object x)の代わりにsetNullメソッドまたはsetObject(int parameterIndex, Object x, int sqlType)メソッドを使用するようにしてください。ノート: たとえば、オブジェクトが上記のインタフェースを複数実装するクラスであるなど、あいまいさがある場合、このメソッドは例外をスローします。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- 入力パラメータ値を含むオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、または指定されたオブジェクトの型があいまいな場合
 
- 
executeboolean execute() throws SQLExceptionこのPreparedStatementオブジェクトの、あらゆる種類のSQL文を実行します。 プリペアド文オブジェクトで用意された文には複数の結果を返すものがあります。executeメソッドは、executeQueryメソッドとexecuteUpdateメソッドによって処理される、より簡単な形式の文と同様に、複雑な文も処理します。executeメソッドは、booleanを返し最初の結果の形式を示します。getResultSetまたはgetUpdateCountメソッドを呼び出して結果を取得します。後続の結果がある場合はgetMoreResultsを呼び出してその結果に移動します。- 戻り値:
- 最初の結果がResultSetオブジェクトの場合はtrue。更新カウントであるか、または結果がない場合はfalse
- 例外:
- SQLException- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、または引数がこのメソッドに指定された場合
- SQLTimeoutException- ドライバが、- setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中の- Statementの取消しを試みたとき
- 関連項目:
- Statement.execute(java.lang.String),- Statement.getResultSet(),- Statement.getUpdateCount(),- Statement.getMoreResults()
 
- 
addBatchvoid addBatch() throws SQLExceptionこのPreparedStatementオブジェクトのコマンドのバッチに、パラメータのセットを追加します。- 例外:
- SQLException- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementについて呼び出された場合
- 導入されたバージョン:
- 1.2
- 関連項目:
- Statement.addBatch(java.lang.String)
 
- 
setCharacterStreamvoid setCharacterStream(int parameterIndex, Reader reader, int length) throws SQLException指定されたパラメータを、指定された文字数である指定されたReaderオブジェクトに設定します。LONGVARCHARパラメータに非常に大きなUNICODE値が入力されるときには、java.io.Readerオブジェクトを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。 JDBCドライバは、データをUNICODEからデータベースのchar形式に変換します。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- reader- Unicodeデータを格納する- java.io.Readerオブジェクト
- length- ストリーム内の文字数
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- 導入されたバージョン:
- 1.2
 
- 
setRefvoid setRef(int parameterIndex, Ref x) throws SQLException指定されたパラメータを、指定されたREF(<structured-type>)値に設定します。 データベースに送るときに、ドライバはこれをSQLREF値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- SQL- REF値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
setBlobvoid setBlob(int parameterIndex, Blob x) throws SQLException指定されたパラメータを指定されたjava.sql.Blobオブジェクトに設定します。 データベースに送るときに、ドライバはこれをSQLBLOB値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- SQL- BLOB値をマッピングする- Blobオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
setClobvoid setClob(int parameterIndex, Clob x) throws SQLException指定されたパラメータを指定されたjava.sql.Clobオブジェクトに設定します。 データベースに送るときに、ドライバはこれをSQLCLOB値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- SQL- CLOB値をマッピングする- Clobオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
setArrayvoid setArray(int parameterIndex, Array x) throws SQLException指定されたパラメータを指定されたjava.sql.Arrayオブジェクトに設定します。 データベースに送るときに、ドライバはこれをSQLARRAY値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- SQL- ARRAY値をマッピングする- Arrayオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
getMetaDataResultSetMetaData getMetaData() throws SQLExceptionこのPreparedStatementオブジェクトが実行されるときに返されるResultSetオブジェクトの列に関する情報を格納するResultSetMetaDataオブジェクトを取得します。PreparedStatementオブジェクトはプリコンパイルされるので、実行せずに、返されるResultSetオブジェクトについて知ることが可能です。 したがって、PreparedStatementオブジェクトのgetMetaDataメソッドを呼び出すことができます。その実行を待ち、それから返されたResultSetオブジェクトに対してResultSet.getMetaDataメソッドを呼び出す必要はありません。ノート: このメソッドの使用は、ドライバによっては基本となるDBMSサポートが不足しているため負荷が大きくなる場合があります。 - 戻り値:
- ResultSetオブジェクトの列の記述、またはドライバが- ResultSetMetaDataオブジェクトを返すことができない場合は- null
- 例外:
- SQLException- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementについて呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
setDatevoid setDate(int parameterIndex, Date x, Calendar cal) throws SQLException指定されたCalendarオブジェクトを使用して、指定されたパラメータを指定されたjava.sql.Date値に設定します。 ドライバはCalendarオブジェクトを使用してSQLDATE値を作成し、続いてそれをデータベースに送ります。Calendarオブジェクトを使用すると、ドライバはカスタム・タイムゾーンを考慮して日付を計算できます。Calendarオブジェクトを指定しない場合、ドライバは、アプリケーションを実行している仮想マシンのタイムゾーンであるデフォルトのタイムゾーンを使用します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- cal- ドライバが日付を作成するために使用する- Calendarオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- 導入されたバージョン:
- 1.2
 
- 
setTimevoid setTime(int parameterIndex, Time x, Calendar cal) throws SQLException指定されたCalendarオブジェクトを使用して、指定されたパラメータを指定されたjava.sql.Time値に設定します。 ドライバはCalendarオブジェクトを使用してSQLTIME値を作成し、続いてそれをデータベースに送ります。Calendarオブジェクトを使用すると、ドライバはカスタム・タイムゾーンを考慮して時間を計算できます。Calendarオブジェクトを指定しない場合、ドライバは、アプリケーションを実行している仮想マシンのタイムゾーンであるデフォルトのタイムゾーンを使用します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- cal- ドライバが時間を作成するために使用する- Calendarオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- 導入されたバージョン:
- 1.2
 
- 
setTimestampvoid setTimestamp(int parameterIndex, Timestamp x, Calendar cal) throws SQLException指定されたCalendarオブジェクトを使用して、指定されたパラメータを指定されたjava.sql.Timestamp値に設定します。 ドライバはCalendarオブジェクトを使用してSQLTIMESTAMP値を作成し、続いてそれをデータベースに送ります。Calendarオブジェクトを使用すると、ドライバはカスタム・タイムゾーンを考慮してタイムスタンプを計算できます。Calendarオブジェクトを指定しない場合、ドライバは、アプリケーションを実行している仮想マシンのタイムゾーンであるデフォルトのタイムゾーンを使用します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- cal- ドライバがタイムスタンプを作成するために使用する- Calendarオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- 導入されたバージョン:
- 1.2
 
- 
setNullvoid setNull(int parameterIndex, int sqlType, String typeName) throws SQLException指定されたパラメータをSQLNULLに設定します。 ユーザー定義型およびREF型のパラメータでは、このバージョンのsetNullメソッドを使用するべきです。 ユーザー定義型の例には、STRUCT、DISTINCT、JAVA_OBJECT、および名前付き配列があります。ノート: 移植性を実現するためには、アプリケーションはNULLのユーザー定義パラメータまたはREFパラメータを指定するときにSQL型コードおよび完全修飾SQL型名を指定しなければいけません。 ユーザー定義型の場合、名前はパラメータ自体の型名です。 REFパラメータの場合、名前は参照される型の型名です。 JDBCドライバが型コードまたは型名の情報を必要としない場合、それは無視されます。 ユーザー定義パラメータおよびREFパラメータを対象としていますが、このメソッドは任意のJDBC型のnullパラメータを設定するために使用できます。 パラメータがユーザー定義の型またはREF型を持たない場合、指定されたtypeNameは無視されます。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- sqlType-- java.sql.Typesからの値
- typeName- SQLユーザー定義型の完全指定の名前。パラメータがユーザー定義型でもREFでもない場合は無視される
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException-- sqlTypeのデータ型が、- ARRAY、- BLOB、- CLOB、- DATALINK、- JAVA_OBJECT、- NCHAR、- NCLOB、- NVARCHAR、- LONGNVARCHAR、- REF、- ROWID、- SQLXML、または- STRUCTで、JDBCドライバがこのデータ型をサポートしていない場合。またはJDBCドライバがこのメソッドをサポートしていない場合
- 導入されたバージョン:
- 1.2
 
- 
setURLvoid setURL(int parameterIndex, URL x) throws SQLException指定されたパラメータを、指定されたjava.net.URL値に設定します。 データベースに送るときに、ドライバはこれをSQLDATALINK値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- 設定される- java.net.URLオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.4
 
- 
getParameterMetaDataParameterMetaData getParameterMetaData() throws SQLExceptionこのPreparedStatementオブジェクトのパラメータの数、型、およびプロパティを取得します。- 戻り値:
- このPreparedStatementオブジェクトの各パラメータ・マーカーの数、型、およびプロパティについての情報を格納するParameterMetaDataオブジェクト
- 例外:
- SQLException- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementについて呼び出された場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- ParameterMetaData
 
- 
setRowIdvoid setRowId(int parameterIndex, RowId x) throws SQLException指定されたパラメータを指定されたjava.sql.RowIdオブジェクトに設定します。 データベースに送るときに、ドライバはこれをSQLROWID値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setNStringvoid setNString(int parameterIndex, String value) throws SQLException指定されたパラメータを指定されたStringオブジェクトに設定します。 データベースに送るときに、ドライバはこれをSQLNCHAR、NVARCHAR、またはLONGNVARCHAR値(ドライバのNVARCHAR値に関する制限に関する引数のサイズに依存)に変換します。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- value- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、ドライバが各国の文字セットをサポートしない場合、ドライバがデータ変換エラーが発生したことを検出できる場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setNCharacterStreamvoid setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException指定されたパラメータをReaderオブジェクトに設定します。Readerは、ファイルの終わりに達するまでデータを読み込みます。 ドライバは、必要に応じて、Javaの文字表現をデータベース内の各国文字セットに変換します。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- value- パラメータ値
- length- パラメータ・データ内の文字数。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、ドライバが各国の文字セットをサポートしない場合、ドライバがデータ変換エラーが発生したことを検出できる場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setNClobvoid setNClob(int parameterIndex, NClob value) throws SQLException指定されたパラメータをjava.sql.NClobオブジェクトに設定します。 データベースに送るときに、ドライバはこれをSQLNCLOB値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- value- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、ドライバが各国の文字セットをサポートしない場合、ドライバがデータ変換エラーが発生したことを検出できる場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setClobvoid setClob(int parameterIndex, Reader reader, long length) throws SQLException指定されたパラメータをReaderオブジェクトに設定します。 readerには、lengthで指定された文字数が含まれている必要があります。そうでない場合、PreparedStatementの実行時にSQLExceptionが生成されます。 このメソッドは、setCharacterStream (int, Reader, int)メソッドと異なり、パラメータ値をCLOBとしてサーバーに送信するべきであることをドライバに通知します。setCharacterStreamメソッドを使用すると、ドライバは、パラメータ・データをLONGVARCHARとCLOBのどちらとしてサーバーに送信するべきかを判断するために余計な作業を行う必要がある可能性があります。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- reader- パラメータ値に設定されるデータを含むオブジェクト。
- length- パラメータ・データ内の文字数。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、または指定されたlengthが0より小さい場合。
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setBlobvoid setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException指定されたパラメータをInputStreamオブジェクトに設定します。Inputstreamには、長さで指定された文字数が含まれていなければなりません。それ以外の場合は、PreparedStatementが実行されるときにSQLExceptionが生成されます。 このメソッドは、setBinaryStream (int, InputStream, int)メソッドと異なり、パラメータ値をBLOBとしてサーバーに送信するべきであることをドライバに通知します。setBinaryStreamメソッドを使用すると、ドライバは、パラメータ・データをLONGVARBINARYとBLOBのどちらとしてサーバーに送信するべきかを判断するために余計な作業を行う必要がある可能性があります。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- inputStream- パラメータ値に設定されるデータを含むオブジェクト。
- length- パラメータ・データ内のバイト数。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応していない場合。データベース・アクセス・エラーが発生した場合。このメソッドは閉じられた- PreparedStatementで呼び出されます。指定された長さが0より小さい場合、または- InputStreamのバイト数が指定された長さと一致しない場合。
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setNClobvoid setNClob(int parameterIndex, Reader reader, long length) throws SQLException指定されたパラメータをReaderオブジェクトに設定します。 readerには、lengthで指定された文字数が含まれている必要があります。そうでない場合、PreparedStatementの実行時にSQLExceptionが生成されます。 このメソッドは、setCharacterStream (int, Reader, int)メソッドと異なり、パラメータ値をNCLOBとしてサーバーに送信するべきであることをドライバに通知します。setCharacterStreamメソッドを使用すると、ドライバは、パラメータ・データをLONGNVARCHARとNCLOBのどちらとしてサーバーに送信するべきかを判断するために余計な作業を行う必要がある可能性があります。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- reader- パラメータ値に設定されるデータを含むオブジェクト。
- length- パラメータ・データ内の文字数。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーと対応していない場合、長さとしてゼロ未満の値が指定された場合、ドライバが各国文字セットをサポートしない場合、ドライバがデータ変換エラーが発生した可能性を検出できる場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatement上で呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setSQLXMLvoid setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException指定されたパラメータを指定されたjava.sql.SQLXMLオブジェクトに設定します。 データベースに送るときに、ドライバはこれをSQLXML値に変換します。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- xmlObject- SQL- XML値をマッピングする- SQLXMLオブジェクト
- 例外:
- SQLException- parameterIndexが指定されたSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementまたは- java.xml.transform.Resultで呼び出された場合、- Writerまたは- OutputStreamが- SQLXMLオブジェクトに対してクローズされていない場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setObjectvoid setObject(int parameterIndex, Object x, int targetSqlType, int scaleOrLength) throws SQLException指定されたパラメータの値を、指定されたオブジェクトで設定します。 2番目の引数が InputStreamである場合、ストリームにはscaleOrLengthで指定されるバイト数が含まれる必要があります。 2番目の引数がReaderである場合、リーダーにはscaleOrLengthで指定される文字数が含まれる必要があります。 これらの条件がtrueではない場合、準備された文の実行時にドライバはSQLExceptionを生成します。指定されたJavaオブジェクトは、データベースに送られる前に、指定されたtargetSqlTypeに変換されます。 オブジェクトがカスタム・マッピングを持つ場合(オブジェクトがインタフェース SQLDataを実装するクラスのインスタンスである場合)、JDBCドライバはSQLData.writeSQLメソッドを呼び出して、そのオブジェクトをSQLデータ・ストリームへ書き込む必要があります。 また、オブジェクトがRef、Blob、Clob、NClob、Struct、java.net.URL、またはArrayを実装するクラスのオブジェクトである場合、ドライバはこのオブジェクトを対応するSQL型の値としてデータベースに渡す必要があります。このメソッドは、データベース固有の抽象データ型を渡すために使用することに注意してください。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- 入力パラメータ値を含むオブジェクト
- targetSqlType- データベースに送られる(java.sql.Typesで定義される) SQL型。 scale引数で、さらにこの型を限定できる。
- scaleOrLength-- java.sql.Types.DECIMALまたは- java.sql.Types.NUMERIC typesの場合、これは小数点のあとの桁数になる。 Javaオブジェクト型- InputStreamおよび- Readerの場合は、ストリームまたはリーダーのデータ長。 ほかのすべての型では、この値は無視される。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、またはxで指定されたJavaオブジェクトがInputStreamオブジェクトかReaderオブジェクトで、かつscaleパラメータの値が0より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバが指定されたtargetSqlTypeをサポートしない場合
- 関連項目:
- Types
 
- 
setAsciiStreamvoid setAsciiStream(int parameterIndex, InputStream x, long length) throws SQLException指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。LONGVARCHARパラメータに非常に大きなASCII値が入力されるときには、java.io.InputStreamを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。 JDBCドライバは、データをASCIIからデータベースのchar形式に変換します。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- ASCIIパラメータ値を含むJava入力ストリーム
- length- ストリームのバイト数
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- 導入されたバージョン:
- 1.6
 
- 
setBinaryStreamvoid setBinaryStream(int parameterIndex, InputStream x, long length) throws SQLException指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。LONGVARBINARYパラメータに非常に大きなバイナリ値が入力されるときには、java.io.InputStreamオブジェクトを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- バイナリ・パラメータ値を含むJava入力ストリーム
- length- ストリームのバイト数
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- 導入されたバージョン:
- 1.6
 
- 
setCharacterStreamvoid setCharacterStream(int parameterIndex, Reader reader, long length) throws SQLException指定されたパラメータを、指定された文字数である指定されたReaderオブジェクトに設定します。LONGVARCHARパラメータに非常に大きなUNICODE値が入力されるときには、java.io.Readerオブジェクトを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。 JDBCドライバは、データをUNICODEからデータベースのchar形式に変換します。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 - パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- reader- Unicodeデータを格納する- java.io.Readerオブジェクト
- length- ストリーム内の文字数
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- 導入されたバージョン:
- 1.6
 
- 
setAsciiStreamvoid setAsciiStream(int parameterIndex, InputStream x) throws SQLException指定されたパラメータを指定された入力ストリームに設定します。LONGVARCHARパラメータに非常に大きなASCII値が入力されるときには、java.io.InputStreamを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。 JDBCドライバは、データをASCIIからデータベースのchar形式に変換します。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 ノート: lengthパラメータを使用するバージョンの setAsciiStreamを使用する方が効率的かどうかを判断するには、JDBCドライバのドキュメントを参照してください。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- ASCIIパラメータ値を含むJava入力ストリーム
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setBinaryStreamvoid setBinaryStream(int parameterIndex, InputStream x) throws SQLException指定されたパラメータを指定された入力ストリームに設定します。LONGVARBINARYパラメータに非常に大きなバイナリ値が入力されるときには、java.io.InputStreamオブジェクトを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 ノート: lengthパラメータを使用するバージョンの setBinaryStreamを使用する方が効率的かどうかを判断するには、JDBCドライバのドキュメントを参照してください。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- バイナリ・パラメータ値を含むJava入力ストリーム
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setCharacterStreamvoid setCharacterStream(int parameterIndex, Reader reader) throws SQLException指定されたパラメータを指定されたReaderオブジェクトに設定します。LONGVARCHARパラメータに非常に大きなUNICODE値が入力されるときには、java.io.Readerオブジェクトを介して送るのが現実的です。 ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。 JDBCドライバは、データをUNICODEからデータベースのchar形式に変換します。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 ノート: lengthパラメータを使用するバージョンの setCharacterStreamを使用する方が効率的かどうかを判断するには、JDBCドライバのドキュメントを参照してください。- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- reader- Unicodeデータを格納する- java.io.Readerオブジェクト
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setNCharacterStreamvoid setNCharacterStream(int parameterIndex, Reader value) throws SQLException指定されたパラメータをReaderオブジェクトに設定します。Readerは、ファイルの終わりに達するまでデータを読み込みます。 ドライバは、必要に応じて、Javaの文字表現をデータベース内の各国文字セットに変換します。ノート: このストリーム・オブジェクトは、標準のJavaストリーム・オブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。 ノート: lengthパラメータを使用するバージョンの setNCharacterStreamを使用する方が効率的かどうかを判断するには、JDBCドライバのドキュメントを参照してください。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- value- パラメータ値
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、ドライバが各国の文字セットをサポートしない場合、ドライバがデータ変換エラーが発生したことを検出できる場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setClobvoid setClob(int parameterIndex, Reader reader) throws SQLException指定されたパラメータをReaderオブジェクトに設定します。 このメソッドは、setCharacterStream (int, Reader)メソッドと異なり、パラメータ値をCLOBとしてサーバーに送信するべきであることをドライバに通知します。setCharacterStreamメソッドを使用すると、ドライバは、パラメータ・データをLONGVARCHARとCLOBのどちらとしてサーバーに送信するべきかを判断するために余計な作業を行う必要がある可能性があります。ノート: lengthパラメータを使用するバージョンの setClobを使用する方が効率的かどうかを判断するには、JDBCドライバのドキュメントを参照してください。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- reader- パラメータ値に設定されるデータを含むオブジェクト。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、またはparameterIndexがSQL文のパラメータ・マーカーに対応しない場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setBlobvoid setBlob(int parameterIndex, InputStream inputStream) throws SQLException指定されたパラメータをInputStreamオブジェクトに設定します。 このメソッドは、setBinaryStream (int, InputStream)メソッドと異なり、パラメータ値をBLOBとしてサーバーに送信しなければならないことをドライバに通知します。setBinaryStreamメソッドを使用すると、ドライバは、パラメータ・データをLONGVARBINARYとBLOBのどちらとしてサーバーに送信するべきかを判断するために余計な作業を行う必要がある可能性があります。ノート: lengthパラメータを使用するバージョンの setBlobを使用する方が効率的かどうかを判断するには、JDBCドライバのドキュメントを参照してください。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- inputStream- パラメータ値に設定されるデータを含むオブジェクト。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、またはparameterIndexがSQL文のパラメータ・マーカーに対応しない場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setNClobvoid setNClob(int parameterIndex, Reader reader) throws SQLException指定されたパラメータをReaderオブジェクトに設定します。 このメソッドは、setCharacterStream (int, Reader)メソッドと異なり、パラメータ値をNCLOBとしてサーバーに送信しなければならないことをドライバに通知します。setCharacterStreamメソッドを使用すると、ドライバは、パラメータ・データをLONGNVARCHARとNCLOBのどちらとしてサーバーに送信するべきかを判断するために余計な作業を行う必要がある可能性があります。ノート: lengthパラメータを使用するバージョンの setNClobを使用する方が効率的かどうかを判断するには、JDBCドライバのドキュメントを参照してください。- パラメータ:
- parameterIndex- 最初のパラメータのインデックスは1、2番目のパラメータのインデックスは2、... となる
- reader- パラメータ値に設定されるデータを含むオブジェクト。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、ドライバが各国の文字セットをサポートしない場合、ドライバがデータ変換エラーが発生したことを検出できる場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
setObjectdefault void setObject(int parameterIndex, Object x, SQLType targetSqlType, int scaleOrLength) throws SQLException指定されたパラメータの値を、指定されたオブジェクトで設定します。 2番目の引数が InputStreamである場合、ストリームにはscaleOrLengthで指定されるバイト数が含まれる必要があります。 2番目の引数がReaderである場合、リーダーにはscaleOrLengthで指定される文字数が含まれる必要があります。 これらの条件がtrueではない場合、準備された文の実行時にドライバはSQLExceptionを生成します。指定されたJavaオブジェクトは、データベースに送られる前に、指定されたtargetSqlTypeに変換されます。 オブジェクトがカスタム・マッピングを持つ場合(オブジェクトがインタフェース SQLDataを実装するクラスのインスタンスである場合)、JDBCドライバはSQLData.writeSQLメソッドを呼び出して、そのオブジェクトをSQLデータ・ストリームへ書き込む必要があります。 また、オブジェクトがRef、Blob、Clob、NClob、Struct、java.net.URL、またはArrayを実装するクラスのオブジェクトである場合、ドライバはこのオブジェクトを対応するSQL型の値としてデータベースに渡す必要があります。このメソッドは、データベース固有の抽象データ型を渡すために使用することに注意してください。 デフォルト実装は SQLFeatureNotSupportedExceptionをスローします- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- 入力パラメータ値を含むオブジェクト
- targetSqlType- データベースに送られるSQL型。 scale引数で、さらにこの型を限定できる。
- scaleOrLength-- java.sql.JDBCType.DECIMALまたは- java.sql.JDBCType.NUMERIC型の場合、これは小数点の後の桁数になる。 Javaオブジェクト型- InputStreamおよび- Readerの場合は、ストリームまたはリーダーのデータ長。 ほかのすべての型では、この値は無視される。
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、またはxで指定されたJavaオブジェクトがInputStreamオブジェクトかReaderオブジェクトで、かつscaleパラメータの値が0より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバが指定されたtargetSqlTypeをサポートしない場合
- 導入されたバージョン:
- 1.8
- 関連項目:
- JDBCType,- SQLType
 
- 
setObjectdefault void setObject(int parameterIndex, Object x, SQLType targetSqlType) throws SQLException指定されたパラメータの値を、指定されたオブジェクトで設定します。 このメソッドは、setObject(int parameterIndex, Object x, SQLType targetSqlType, int scaleOrLength)に似ていますが、scaleに0を仮定している点が異なります。デフォルト実装は SQLFeatureNotSupportedExceptionをスローします- パラメータ:
- parameterIndex- 最初のパラメータは1、2番目のパラメータは2、... となる
- x- 入力パラメータ値を含むオブジェクト
- targetSqlType- データベースに送られるSQL型
- 例外:
- SQLException- parameterIndexがSQL文のパラメータ・マーカーに対応しない場合、データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた- PreparedStatementで呼び出された場合
- SQLFeatureNotSupportedException- JDBCドライバが指定されたtargetSqlTypeをサポートしない場合
- 導入されたバージョン:
- 1.8
- 関連項目:
- JDBCType,- SQLType
 
- 
executeLargeUpdatedefault long executeLargeUpdate() throws SQLExceptionこのPreparedStatementオブジェクトのSQL文を実行します。それはSQLデータ操作言語(DML)文(INSERT文、UPDATE文、DELETE文など)であるか、DDL文のような何も返さないSQL文でなければなりません。返される行数が Integer.MAX_VALUEを超える可能性がある場合は、このメソッドを使用するようにしてください。デフォルト実装は UnsupportedOperationExceptionをスローします- 戻り値:
- (1) SQLデータ操作言語(DML)文の場合は行数、(2)何も返さないSQL文の場合は0
- 例外:
- SQLException- データベース・アクセス・エラーが発生した場合、このメソッドがクローズされた- PreparedStatementで呼び出された場合、またはSQL文が- ResultSetオブジェクトを返した場合
- SQLTimeoutException- ドライバが、- setQueryTimeoutメソッドで指定されたタイム・アウト値が経過したと判定し、少なくとも現在実行中の- Statementの取消しを試みたとき
- 導入されたバージョン:
- 1.8
 
 
-