JavaTM 2 Platform
Standard Ed. 5.0

java.sql
インタフェース PreparedStatement

すべてのスーパーインタフェース:
Statement
既知のサブインタフェースの一覧:
CallableStatement

public interface PreparedStatement
extends Statement

プリコンパイルされた SQL 文を表すオブジェクトです。

SQL 文は、プリコンパイルされ、PreparedStatement オブジェクトに格納されます。そこで、このオブジェクトは、この文を複数回効率的に実行する目的で使用できます。

注: IN パラメータ値を設定する設定機能メソッド (setShortsetString など) は、入力パラメータの定義された SQL 型と互換のある型を指定しなければなりません。たとえば、IN パラメータに INTEGER という SQL 型がある場合、setInt メソッドを使用しなければなりません。

任意のパラメータ型変換が必要な場合は、setObject メソッドは、目的の SQL 型で使用しなければなりません。

パラメータ設定の例を次に示します。con はアクティブな接続を表します。

 PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES SET SALARY = ? WHERE ID = ?"); pstmt.setBigDecimal(1, 153833.00) pstmt.setInt(2, 110592) 

関連項目:
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
 
メソッドの概要
 void addBatch()
          この PreparedStatement オブジェクトのコマンドのバッチに、パラメータのセットを追加します。
 void clearParameters()
          現在のパラメータ値をすぐにクリアします。
 boolean execute()
          この PreparedStatement オブジェクトの、あらゆる種類の SQL 文を実行します。
 ResultSet executeQuery()
          この PreparedStatement オブジェクトの SQL クエリーを実行し、そのクエリーによって生成された ResultSet オブジェクトを返します。
 int executeUpdate()
          この PreparedStatement オブジェクトの SQL INSERT 文、UPDATE 文、または DELETE 文を実行します。
 ResultSetMetaData getMetaData()
          この PreparedStatement が実行されるときに返される ResultSet オブジェクトの列に関する情報を格納する ResultSetMetaData オブジェクトを取得します。
 ParameterMetaData getParameterMetaData()
          この PreparedStatement オブジェクトのパラメータの数、型、およびプロパティを取得します。
 void setArray(int i, Array x)
          指定されたパラメータを指定された Array オブジェクトに設定します。
 void setAsciiStream(int parameterIndex, InputStream x, int length)
          指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。
 void setBigDecimal(int parameterIndex, BigDecimal x)
          指定されたパラメータを指定された java.math.BigDecimal 値に設定します。
 void setBinaryStream(int parameterIndex, InputStream x, int length)
          指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。
 void setBlob(int i, Blob x)
          指定されたパラメータを指定された Blob オブジェクトに設定します。
 void setBoolean(int parameterIndex, boolean x)
          指定されたパラメータを指定された Java の boolean 値に設定します。
 void setByte(int parameterIndex, byte x)
          指定されたパラメータを指定された Java の byte 値に設定します。
 void setBytes(int parameterIndex, byte[] x)
          指定されたパラメータを指定された Java のバイト配列に設定します。
 void setCharacterStream(int parameterIndex, Reader reader, int length)
          指定されたパラメータを、指定された文字数である指定された Reader オブジェクトに設定します。
 void setClob(int i, Clob x)
          指定されたパラメータを指定された Clob オブジェクトに設定します。
 void setDate(int parameterIndex, Date x)
          指定されたパラメータを指定された java.sql.Date 値に設定します。
 void setDate(int parameterIndex, Date x, Calendar cal)
          指定された Calendar オブジェクトを使用して、指定されたパラメータを指定された java.sql.Date 値に設定します。
 void setDouble(int parameterIndex, double x)
          指定されたパラメータを指定された Java の double 値に設定します。
 void setFloat(int parameterIndex, float x)
          指定されたパラメータを指定された Java の float 値に設定します。
 void setInt(int parameterIndex, int x)
          指定されたパラメータを指定された Java の int 値に設定します。
 void setLong(int parameterIndex, long x)
          指定されたパラメータを指定された Java の long 値に設定します。
 void setNull(int parameterIndex, int sqlType)
          指定されたパラメータを SQL NULL に設定します。
 void setNull(int paramIndex, int sqlType, String typeName)
          指定されたパラメータを SQL NULL に設定します。
 void setObject(int parameterIndex, Object x)
          指定されたパラメータの値を、指定されたオブジェクトを使用して設定します。
 void setObject(int parameterIndex, Object x, int targetSqlType)
          指定されたパラメータの値を、指定されたオブジェクトで設定します。
 void setObject(int parameterIndex, Object x, int targetSqlType, int scale)
          指定されたパラメータの値を、指定されたオブジェクトを使用して設定します。
 void setRef(int i, Ref x)
          指定されたパラメータを指定された REF(<structured-type>) 値に設定します。
 void setShort(int parameterIndex, short x)
          指定されたパラメータを指定された Java の short 値に設定します。
 void setString(int parameterIndex, String x)
          指定されたパラメータを指定された Java の String 値に設定します。
 void setTime(int parameterIndex, Time x)
          指定されたパラメータを指定された java.sql.Time 値に設定します。
 void setTime(int parameterIndex, Time x, Calendar cal)
          指定された Calendar オブジェクトを使用して、指定されたパラメータを指定された java.sql.Time 値に設定します。
 void setTimestamp(int parameterIndex, Timestamp x)
          指定されたパラメータを指定された java.sql.Timestamp 値に設定します。
 void setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
          指定された Calendar オブジェクトを使用して、指定されたパラメータを指定された java.sql.Timestamp 値に設定します。
 void setUnicodeStream(int parameterIndex, InputStream x, int length)
          推奨されていません。 
 void setURL(int parameterIndex, URL x)
          指定されたパラメータを指定された java.net.URL 値に設定します。
 
インタフェース java.sql.Statement から継承されたメソッド
addBatch, cancel, clearBatch, clearWarnings, close, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout
 

メソッドの詳細

executeQuery

ResultSet executeQuery()
                       throws SQLException
この PreparedStatement オブジェクトの SQL クエリーを実行し、そのクエリーによって生成された ResultSet オブジェクトを返します。

戻り値:
クエリーによって作成されたデータを含む ResultSet オブジェクト。null にはならない
例外:
SQLException - データベースアクセスエラーが発生した場合、または SQL 文が ResultSet オブジェクトを返さない場合

executeUpdate

int executeUpdate()
                  throws SQLException
この PreparedStatement オブジェクトの SQL INSERT 文、UPDATE 文、または DELETE 文を実行します。さらに、DDL 文のような何も返さない SQL 文を実行することもできます。

戻り値:
INSERT 文、UPDATE 文、DELETE 文の場合は行数。何も返さない SQL 文の場合は 0
例外:
SQLException - データベースアクセスエラーが発生した場合、または SQL 文が ResultSet オブジェクトを返す場合

setNull

void setNull(int parameterIndex,
             int sqlType)
             throws SQLException
指定されたパラメータを SQL NULL に設定します。

注: パラメータの SQL の型を指定する必要があります。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
sqlType - java.sql.Types で定義される SQL 型コード
例外:
SQLException - データベースアクセスエラーが発生した場合

setBoolean

void setBoolean(int parameterIndex,
                boolean x)
                throws SQLException
指定されたパラメータを指定された Java の boolean 値に設定します。データベースに送るときに、ドライバはこれを SQL BIT 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setByte

void setByte(int parameterIndex,
             byte x)
             throws SQLException
指定されたパラメータを指定された Java の byte 値に設定します。データベースに送るときに、ドライバはこれを SQL TINYINT 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setShort

void setShort(int parameterIndex,
              short x)
              throws SQLException
指定されたパラメータを指定された Java の short 値に設定します。データベースに送るときに、ドライバはこれを SQL SMALLINT 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setInt

void setInt(int parameterIndex,
            int x)
            throws SQLException
指定されたパラメータを指定された Java の int 値に設定します。データベースに送るときに、ドライバはこれを SQL INTEGER 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setLong

void setLong(int parameterIndex,
             long x)
             throws SQLException
指定されたパラメータを指定された Java の long 値に設定します。データベースに送るときに、ドライバはこれを SQL BIGINT 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setFloat

void setFloat(int parameterIndex,
              float x)
              throws SQLException
指定されたパラメータを指定された Java の float 値に設定します。データベースに送るときに、ドライバはこれを SQL FLOAT 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setDouble

void setDouble(int parameterIndex,
               double x)
               throws SQLException
指定されたパラメータを指定された Java の double 値に設定します。データベースに送るときに、ドライバはこれを SQL DOUBLE 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setBigDecimal

void setBigDecimal(int parameterIndex,
                   BigDecimal x)
                   throws SQLException
指定されたパラメータを指定された java.math.BigDecimal 値に設定します。データベースに送るときに、ドライバはこれを SQL NUMERIC 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setString

void setString(int parameterIndex,
               String x)
               throws SQLException
指定されたパラメータを指定された Java の String 値に設定します。データベースに送るときに、ドライバはこれを SQL VARCHAR または LONGVARCHAR 値 (ドライバの VARCHAR 値に関する制限に関する引数のサイズに依存) に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setBytes

void setBytes(int parameterIndex,
              byte[] x)
              throws SQLException
指定されたパラメータを指定された Java のバイト配列に設定します。データベースに送るときに、ドライバはこれを SQL VARBINARY または LONGVARBINARY (ドライバの VARBINARY 値に関する制限に関する引数のサイズに依存) に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setDate

void setDate(int parameterIndex,
             Date x)
             throws SQLException
指定されたパラメータを指定された java.sql.Date 値に設定します。データベースに送るときに、ドライバはこれを SQL DATE 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setTime

void setTime(int parameterIndex,
             Time x)
             throws SQLException
指定されたパラメータを指定された java.sql.Time 値に設定します。データベースに送るときに、ドライバはこれを SQL TIME 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setTimestamp

void setTimestamp(int parameterIndex,
                  Timestamp x)
                  throws SQLException
指定されたパラメータを指定された java.sql.Timestamp 値に設定します。データベースに送るときに、ドライバはこれを SQL TIMESTAMP 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
例外:
SQLException - データベースアクセスエラーが発生した場合

setAsciiStream

void 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 - データベースアクセスエラーが発生した場合

setUnicodeStream

@Deprecated
void setUnicodeStream(int parameterIndex,
                                 InputStream x,
                                 int length)
                      throws SQLException
推奨されていません。 

指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。Unicode 文字は 2 バイトからなり、最初のバイトが上位バイト、2 番目が下位バイトです。 LONGVARCHAR パラメータに非常に大きな Unicode 値が入力されるときには、java.io.InputStream を介して送るのが現実的です。ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。JDBC ドライバは、データを Unicode からデータベースの char 形式に変換します。

注: このストリームオブジェクトは、標準の Java ストリームオブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - Unicode パラメータを 2 バイトの Unicode 文字として格納する java.io.InputStream オブジェクト
length - ストリームのバイト数
例外:
SQLException - データベースアクセスエラーが発生した場合

setBinaryStream

void setBinaryStream(int parameterIndex,
                     InputStream x,
                     int length)
                     throws SQLException
指定されたパラメータを、指定されたバイト数を持つ指定された入力ストリームに設定します。LONGVARBINARY パラメータに、非常に大きなバイナリ値が入力されるときには、java.io.InputStream オブジェクトを介して送るのが現実的です。ファイルの終わりに達するまで必要に応じてストリームからデータが読み込まれます。

注: このストリームオブジェクトは、標準の Java ストリームオブジェクト、または標準インタフェースを実装する独自のサブクラスのどちらでもかまいません。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - バイナリパラメータ値を含む Java 入力ストリーム
length - ストリームのバイト数
例外:
SQLException - データベースアクセスエラーが発生した場合

clearParameters

void clearParameters()
                     throws SQLException
現在のパラメータ値をすぐにクリアします。

通常、文を繰り返し使用するために、パラメータ値は強制的に残されます。パラメータ値を設定すると、前の値は自動的にクリアされます。しかし、現在のパラメータ値によって使用されたリソースをただちに解放したほうが役に立つ場合があります。これは、メソッド clearParameters を呼び出して実行することができます。

例外:
SQLException - データベースアクセスエラーが発生した場合

setObject

void setObject(int parameterIndex,
               Object x,
               int targetSqlType,
               int scale)
               throws SQLException

指定されたパラメータの値を、指定されたオブジェクトを使用して設定します。2 番目の引数は、オブジェクトの型でなければなりません。必要となるすべての値に対して、等価な java.lang オブジェクトを使用する必要があります。

指定された Java オブジェクトは、データベースに送られる前に、指定された targetSqlType に変換されます。 オブジェクトがカスタムマッピングを持つ場合 (オブジェクトがインタフェース SQLData を実装するクラスのインスタンスである場合)、JDBC ドライバは SQLData.writeSQL メソッドを呼び出して、そのオブジェクトを SQL データストリームへ書き込む必要があります。また、オブジェクトが RefBlobClobStruct、または Array を実装するクラスのインスタンスである場合、ドライバはオブジェクトを、対応する SQL 型の値としてデータベースに渡す必要があります。

このメソッドは、データベース固有の抽象データ型を渡すために使用することに注意してください。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - 入力パラメータ値を含むオブジェクト
targetSqlType - データベースに送られる (java.sql.Types で定義される) SQL 型。スケール引数で、さらに型を限定できる
scale - java.sql.Types.DECIMAL や java.sql.Types.NUMERIC 型では、小数点以下の桁数。ほかのすべての型では、この値は無視される
例外:
SQLException - データベースアクセスエラーが発生した場合
関連項目:
Types

setObject

void setObject(int parameterIndex,
               Object x,
               int targetSqlType)
               throws SQLException
指定されたパラメータの値を、指定されたオブジェクトで設定します。このメソッドは、上記のメソッド setObject に似ていますが、スケールに 0 を仮定している点が異なります。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - 入力パラメータ値を含むオブジェクト
targetSqlType - データベースに送られる (java.sql.Types で定義される) SQL 型
例外:
SQLException - データベースアクセスエラーが発生した場合

setObject

void setObject(int parameterIndex,
               Object x)
               throws SQLException

指定されたパラメータの値を、指定されたオブジェクトを使用して設定します。2 番目のパラメータは、Object の型でなければなりません。したがって、組み込み型の場合、等価な java.lang オブジェクトを使用する必要があります。

JDBC は、Java の Object 型から SQL 型への標準マッピングを指定しています。指定された引数は、データベースに送られる前に、対応する SQL 型に変換されます。

このメソッドは、ドライバ固有の Java 型を使用して、データベース固有の抽象データ型を渡すために使用することに注意してください。 オブジェクトがインタフェース SQLData を実装するクラスのインスタンスである場合、JDBC ドライバは SQLData.writeSQL メソッドを呼び出して、そのオブジェクトを SQL データストリームへ書き込む必要があります。また、オブジェクトが RefBlobClobStruct、または Array を実装するクラスのインスタンスである場合、ドライバはオブジェクトを、対応する SQL 型の値としてデータベースに渡す必要があります。

たとえば、オブジェクトが上記のインタフェースを複数実装するクラスであるなど、あいまいさがある場合、このメソッドは例外をスローします。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - 入力パラメータ値を含むオブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合、または指定されたオブジェクトの型があいまいである場合

execute

boolean execute()
                throws SQLException
この PreparedStatement オブジェクトの、あらゆる種類の SQL 文を実行します。PreparedStatement オブジェクトで用意された文には複数の結果を返すものがあります。execute メソッドは、executeQuery メソッドと executeUpdate メソッドによって処理される、より簡単な形式の文と同様に、複雑な文も処理します。

execute メソッドは、boolean を返し最初の結果の形式を示します。getResultSet または getUpdateCount メソッドを呼び出して結果を取得します。そして、getMoreResults を呼び出して引き続き任意の結果の取得 (複数可) に移動します。

戻り値:
最初の結果が ResultSet オブジェクトの場合は true。更新カウントであるか、または結果がない場合は false
例外:
SQLException - データベースアクセスエラーが発生した場合、またはこのメソッドに引数が指定された場合
関連項目:
Statement.execute(java.lang.String), Statement.getResultSet(), Statement.getUpdateCount(), Statement.getMoreResults()

addBatch

void addBatch()
              throws SQLException
この PreparedStatement オブジェクトのコマンドのバッチに、パラメータのセットを追加します。

例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2
関連項目:
Statement.addBatch(java.lang.String)

setCharacterStream

void 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 - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setRef

void setRef(int i,
            Ref x)
            throws SQLException
指定されたパラメータを指定された REF(<structured-type>) 値に設定します。データベースに送るときに、ドライバはこれを SQL REF 値に変換します。

パラメータ:
i - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - SQL REF
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setBlob

void setBlob(int i,
             Blob x)
             throws SQLException
指定されたパラメータを指定された Blob オブジェクトに設定します。データベースに送るときに、ドライバはこれを SQL BLOB 値に変換します。

パラメータ:
i - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - SQL BLOB 値をマッピングする Blob オブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setClob

void setClob(int i,
             Clob x)
             throws SQLException
指定されたパラメータを指定された Clob オブジェクトに設定します。データベースに送るときに、ドライバはこれを SQL CLOB 値に変換します。

パラメータ:
i - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - SQL CLOB 値をマッピングする Clob オブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setArray

void setArray(int i,
              Array x)
              throws SQLException
指定されたパラメータを指定された Array オブジェクトに設定します。データベースに送るときに、ドライバはこれを SQL ARRAY 値に変換します。

パラメータ:
i - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - SQL ARRAY 値をマッピングする Array オブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

getMetaData

ResultSetMetaData getMetaData()
                              throws SQLException
この PreparedStatement が実行されるときに返される ResultSet オブジェクトの列に関する情報を格納する ResultSetMetaData オブジェクトを取得します。

PreparedStatement オブジェクトはプリコンパイルされるので、実行されずに返される ResultSet について知ることが可能です。したがって、PreparedStatement について getMetaData の実行を待ち、それから返された ResultSet について ResultSet.getMetaData を呼び出すのではなく、getMetaData を呼び出すことができます。

注: このメソッドの使用は、ドライバによっては基本となる DBMS サポートが不足しているため負荷が大きくなる場合があります。

戻り値:
ResultSet オブジェクトの列の記述、またはドライバが ResultSetMetaData オブジェクトを返すことができない場合は null
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setDate

void setDate(int parameterIndex,
             Date x,
             Calendar cal)
             throws SQLException
指定された Calendar オブジェクトを使用して、指定されたパラメータを指定された java.sql.Date 値に設定します。ドライバは Calendar オブジェクトを使用して SQL DATE 値を作成し、続いてそれをデータベースに送ります。Calendar オブジェクトを使用すると、ドライバはカスタムタイムゾーンを考慮して日付を計算できます。Calendar オブジェクトを指定しない場合、ドライバは、アプリケーションで実行される仮想マシンのタイムゾーンであるデフォルトのタイムゾーンを使用します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
cal - ドライバが日付を作成するために使用する Calendar オブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setTime

void setTime(int parameterIndex,
             Time x,
             Calendar cal)
             throws SQLException
指定された Calendar オブジェクトを使用して、指定されたパラメータを指定された java.sql.Time 値に設定します。ドライバは Calendar オブジェクトを使用して SQL java.sql.Time 値を作成し、続いてそれをデータベースに送ります。Calendar オブジェクトを使用すると、ドライバはカスタムタイムゾーンを考慮して時刻を計算できます。Calendar オブジェクトを指定しない場合、ドライバは、アプリケーションで実行される仮想マシンのタイムゾーンであるデフォルトのタイムゾーンを使用します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
cal - ドライバが時刻を作成するために使用する Calendar オブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setTimestamp

void setTimestamp(int parameterIndex,
                  Timestamp x,
                  Calendar cal)
                  throws SQLException
指定された Calendar オブジェクトを使用して、指定されたパラメータを指定された java.sql.Timestamp 値に設定します。ドライバは Calendar オブジェクトを使用して SQL TIMESTAMP 値を作成し、続いてそれをデータベースに送ります。Calendar オブジェクトを使用すると、ドライバはカスタムタイムゾーンを考慮してタイムスタンプを計算できます。Calendar オブジェクトを指定しない場合、ドライバは、アプリケーションで実行される仮想マシンのタイムゾーンであるデフォルトのタイムゾーンを使用します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - パラメータ値
cal - ドライバがタイムスタンプを作成するために使用する Calendar オブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setNull

void setNull(int paramIndex,
             int sqlType,
             String typeName)
             throws SQLException
指定されたパラメータを SQL NULL に設定します。ユーザ定義型および REF 型のパラメータでは、このバージョンのメソッド setNull を使用しなければなりません。ユーザ定義型の例には、STRUCT、DISTINCT、JAVA_OBJECT、および名前付き配列があります。

注: 移植性を実現するためには、アプリケーションは NULL のユーザ定義パラメータまたは REF パラメータを指定するときに SQL 型コードおよび完全指定の SQL 型名を指定しなければなりません。ユーザ定義型の場合、名前はパラメータ自体の型名です。REF パラメータの場合、名前は参照される型の型名です。JDBC ドライバが型コードまたは型名の情報を必要としない場合、それは無視されます。 ユーザ定義パラメータおよび REF パラメータを対象としていますが、このメソッドは任意の JDBC 型の null パラメータを設定するために使用できます。パラメータがユーザ定義の型または REF 型を持たない場合、指定された typeName は無視されます。

パラメータ:
paramIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
sqlType - java.sql.Types からの値
typeName - SQL ユーザ定義型の完全指定の名前。パラメータがユーザ定義型でも REF でもない場合は無視される
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.2

setURL

void setURL(int parameterIndex,
            URL x)
            throws SQLException
指定されたパラメータを指定された java.net.URL 値に設定します。データベースに送るときに、ドライバはこれを SQL DATALINK 値に変換します。

パラメータ:
parameterIndex - 最初のパラメータは 1、2 番目のパラメータは 2、... となる
x - 設定される java.net.URL オブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.4

getParameterMetaData

ParameterMetaData getParameterMetaData()
                                       throws SQLException
この PreparedStatement オブジェクトのパラメータの数、型、およびプロパティを取得します。

戻り値:
この PreparedStatement オブジェクトのパラメータの数、型、およびプロパティについての情報を格納する ParameterMetaData オブジェクト
例外:
SQLException - データベースアクセスエラーが発生した場合
導入されたバージョン:
1.4
関連項目:
ParameterMetaData

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。