public interface PreparedStatement extends Statement
一个SQL语句的预编译并存储在一个PreparedStatement对象。此对象可以被用来有效地执行此语句多次。
注: setter方法(setShort,setString,等等)在参数值的设置必须指定与定义的SQL类型的输入参数类型兼容。例如,如果在参数INTEGER SQL类型,则应使用的方法setInt。
如果任意参数类型转换时,应采用的方法setObject目标SQL类型。
在下面的例子中设置一个参数,con代表一个活动连接:
PreparedStatement pstmt =欺诈。preparestatement(“更新员工设定工资?哪里是身份证?”;pstmt setbigdecimal(1,153833)。pstmt setint(2,110592)。
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO| Modifier and Type | Method and Description |
|---|---|
void |
addBatch()
增加了一个参数集的命令这
PreparedStatement对象的批。
|
void |
clearParameters()
立即清除当前的参数值。
|
boolean |
execute()
在这
PreparedStatement对象执行SQL语句,这可能是任何类型的SQL语句。
|
default long |
executeLargeUpdate()
在这
PreparedStatement对象执行SQL语句,它必须是一个SQL数据操作语言(DML)语句,如
INSERT,
UPDATE或
DELETE;或一个SQL语句没有返回,如DDL语句。
|
ResultSet |
executeQuery()
执行sql查询本
PreparedStatement对象并返回查询所产生的
ResultSet对象。
|
int |
executeUpdate()
在这
PreparedStatement对象执行SQL语句,它必须是一个SQL数据操作语言(DML)语句,如
INSERT,
UPDATE或
DELETE;或一个SQL语句没有返回,如DDL语句。
|
ResultSetMetaData |
getMetaData()
检索
ResultSetMetaData对象所包含的信息的列的
ResultSet对象时将返回该对象执行
PreparedStatement。
|
ParameterMetaData |
getParameterMetaData()
检索的数量,这
PreparedStatement对象参数的类型和性质。
|
void |
setArray(int parameterIndex, Array x)
设置为给定
java.sql.Array对象指定的参数。
|
void |
setAsciiStream(int parameterIndex, InputStream x)
将指定的参数设置为给定的输入流。
|
void |
setAsciiStream(int parameterIndex, InputStream x, int length)
将指定的参数设置为给定的输入流,这将有指定的字节数。
|
void |
setAsciiStream(int parameterIndex, InputStream x, long length)
将指定的参数设置为给定的输入流,这将有指定的字节数。
|
void |
setBigDecimal(int parameterIndex, BigDecimal x)
设置为给定
java.math.BigDecimal指定参数值。
|
void |
setBinaryStream(int parameterIndex, InputStream x)
将指定的参数设置为给定的输入流。
|
void |
setBinaryStream(int parameterIndex, InputStream x, int length)
将指定的参数设置为给定的输入流,这将有指定的字节数。
|
void |
setBinaryStream(int parameterIndex, InputStream x, long length)
将指定的参数设置为给定的输入流,这将有指定的字节数。
|
void |
setBlob(int parameterIndex, Blob x)
设置为给定
java.sql.Blob对象指定的参数。
|
void |
setBlob(int parameterIndex, InputStream inputStream)
设置一个
InputStream对象指定的参数。
|
void |
setBlob(int parameterIndex, InputStream inputStream, long length)
设置一个
InputStream对象指定的参数。
|
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)
设置为给定
Reader对象指定的参数。
|
void |
setCharacterStream(int parameterIndex, Reader reader, int length)
设置指定的参数给定的
Reader对象,即给定数量的字符。
|
void |
setCharacterStream(int parameterIndex, Reader reader, long length)
设置指定的参数给定的
Reader对象,即给定数量的字符。
|
void |
setClob(int parameterIndex, Clob x)
设置为给定
java.sql.Clob对象指定的参数。
|
void |
setClob(int parameterIndex, Reader reader)
设置一个
Reader对象指定的参数。
|
void |
setClob(int parameterIndex, Reader reader, long length)
设置一个
Reader对象指定的参数。
|
void |
setDate(int parameterIndex, Date x)
设置为给定
java.sql.Date价值利用虚拟机正在运行的应用程序的默认时区指定参数。
|
void |
setDate(int parameterIndex, Date x, Calendar cal)
设置指定的参数给定的
java.sql.Date值,使用给定的
Calendar对象。
|
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 |
setNCharacterStream(int parameterIndex, Reader value)
设置一个
Reader对象指定的参数。
|
void |
setNCharacterStream(int parameterIndex, Reader value, long length)
设置一个
Reader对象指定的参数。
|
void |
setNClob(int parameterIndex, NClob value)
设置一个
java.sql.NClob对象指定的参数。
|
void |
setNClob(int parameterIndex, Reader reader)
设置一个
Reader对象指定的参数。
|
void |
setNClob(int parameterIndex, Reader reader, long length)
设置一个
Reader对象指定的参数。
|
void |
setNString(int parameterIndex, String value)
设置为给定
String对象指定的参数。
|
void |
setNull(int parameterIndex, int sqlType)
设置SQL
NULL指定参数。
|
void |
setNull(int parameterIndex, 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 scaleOrLength)
用给定的对象设置指定参数的值。
|
default void |
setObject(int parameterIndex, Object x, SQLType targetSqlType)
用给定的对象设置指定参数的值。
|
default void |
setObject(int parameterIndex, Object x, SQLType targetSqlType, int scaleOrLength)
用给定的对象设置指定参数的值。
|
void |
setRef(int parameterIndex, Ref x)
设置为给定
REF(<structured-type>)指定参数值。
|
void |
setRowId(int parameterIndex, RowId x)
设置为给定
java.sql.RowId对象指定的参数。
|
void |
setShort(int parameterIndex, short x)
设置给定的java
short指定参数值。
|
void |
setSQLXML(int parameterIndex, SQLXML xmlObject)
设置为给定
java.sql.SQLXML对象指定的参数。
|
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)
设置指定的参数给定的
java.sql.Time值,使用给定的
Calendar对象。
|
void |
setTimestamp(int parameterIndex, Timestamp x)
设置为给定
java.sql.Timestamp指定参数值。
|
void |
setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
设置指定的参数给定的
java.sql.Timestamp值,使用给定的
Calendar对象。
|
void |
setUnicodeStream(int parameterIndex, InputStream x, int length)
过时的。
使用
setCharacterStream
|
void |
setURL(int parameterIndex, URL x)
设置为给定
java.net.URL指定参数值。
|
addBatch, cancel, clearBatch, clearWarnings, close, closeOnCompletion, 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, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeoutisWrapperFor, unwrapResultSet executeQuery() throws SQLException
PreparedStatement对象并返回查询所产生的
ResultSet对象。
ResultSet对象包含查询所产生的数据;不
null
SQLException -如果一个数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或SQL语句不返回
ResultSet对象
SQLTimeoutException -当司机决定了超时值,是由
setQueryTimeout法规定已经超过,至少试图取消当前正在运行的
Statement
int executeUpdate()
throws SQLException
PreparedStatement对象执行SQL语句,它必须是一个SQL数据操作语言(DML)语句,如
INSERT,
UPDATE或
DELETE;或一个SQL语句没有返回,如DDL语句。
SQLException -如果一个数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或SQL语句返回
ResultSet对象
SQLTimeoutException -当司机决定了超时值,是由
setQueryTimeout法规定已经超过,至少试图取消当前正在运行的
Statement
void setNull(int parameterIndex,
int sqlType)
throws SQLException
NULL指定参数。
注:必须指定参数的SQL类型。
parameterIndex -第一个参数是1,其次是2,…
sqlType的SQL类型代码中定义的
java.sql.Types
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException -如果
sqlType是
ARRAY,
BLOB,
CLOB,
DATALINK,
JAVA_OBJECT,
NCHAR,
NCLOB,
NVARCHAR,
LONGNVARCHAR,
REF,
ROWID,
SQLXML或
STRUCT数据类型和JDBC驱动程序不支持这种数据类型
void setBoolean(int parameterIndex,
boolean x)
throws SQLException
boolean指定参数值。司机将一个SQL
BIT或
BOOLEAN价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setByte(int parameterIndex,
byte x)
throws SQLException
byte指定参数值。司机将一个SQL
TINYINT价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setShort(int parameterIndex,
short x)
throws SQLException
short指定参数值。司机将一个SQL
SMALLINT价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setInt(int parameterIndex,
int x)
throws SQLException
int指定参数值。司机将一个SQL
INTEGER价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setLong(int parameterIndex,
long x)
throws SQLException
long指定参数值。司机将一个SQL
BIGINT价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setFloat(int parameterIndex,
float x)
throws SQLException
float指定参数值。司机将一个SQL
REAL价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setDouble(int parameterIndex,
double x)
throws SQLException
double指定参数值。司机将一个SQL
DOUBLE价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setBigDecimal(int parameterIndex,
BigDecimal x)
throws SQLException
java.math.BigDecimal指定参数值。司机将一个SQL
NUMERIC价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setString(int parameterIndex,
String x)
throws SQLException
String指定参数值。司机将一个SQL
VARCHAR或
LONGVARCHAR值(取决于参数的大小相对论
VARCHAR值驾驶极限)时,发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setBytes(int parameterIndex,
byte[] x)
throws SQLException
VARBINARY或
LONGVARBINARY(取决于参数的大小相对论
VARBINARY值驾驶极限)时,发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setDate(int parameterIndex,
Date x)
throws SQLException
java.sql.Date价值利用虚拟机正在运行的应用程序的默认时区指定参数。司机将一个SQL
DATE价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setTime(int parameterIndex,
Time x)
throws SQLException
java.sql.Time指定参数值。司机将一个SQL
TIME价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setTimestamp(int parameterIndex,
Timestamp x)
throws SQLException
java.sql.Timestamp指定参数值。司机将一个SQL
TIMESTAMP价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setAsciiStream(int parameterIndex,
InputStream x,
int length)
throws SQLException
LONGVARCHAR参数,它可以通过
java.io.InputStream送它更实用。将从所需的数据流中读取数据,直到达到文件结束为止。JDBC驱动程序将从ASCII格式的数据库做任何必要的转换。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
parameterIndex -第一个参数是1,其次是2,…
x - java输入流包含ASCII码的参数值
length在流的字节数
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
@Deprecated void setUnicodeStream(int parameterIndex, InputStream x, int length) throws SQLException
setCharacterStream
LONGVARCHAR参数,它可以通过
java.io.InputStream对象发送它更实用。将从所需要的数据读取到所需的数据,直到文件结束为止。JDBC驱动程序将从Unicode数据库格式做任何必要的转换。的Unicode字节流的格式必须是java UTF-8,在java虚拟机规范定义。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
parameterIndex -第一个参数是1,其次是2,…
x -
java.io.InputStream包含Unicode的参数值
length在流的字节数
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setBinaryStream(int parameterIndex,
InputStream x,
int length)
throws SQLException
LONGVARBINARY参数,它可以通过
java.io.InputStream对象发送它更实用。将从所需要的数据读取到所需的数据,直到文件结束为止。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
parameterIndex -第一个参数是1,其次是2,…
x - java输入流包含二进制参数值
length在流的字节数
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void clearParameters()
throws SQLException
在一般情况下,参数值仍然是一个语句的重复使用的力量。设置参数值自动清除它的前一个值。然而,在某些情况下,它是立即释放由当前的参数值使用的有用的资源;这可以通过调用该方法clearParameters做。
SQLException -如果一个数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setObject(int parameterIndex,
Object x,
int targetSqlType)
throws SQLException
setObject(int parameterIndex, Object x, int targetSqlType, int scaleOrLength),除了它假定零规模。
parameterIndex -第一个参数是1,其次是2,…
x包含输入参数值的对象
targetSqlType的SQL类型(如java,SQL类型定义)被发送到数据库
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持指定的targetsqltype
Types
void setObject(int parameterIndex,
Object x)
throws SQLException
使用给定的对象设置指定参数的值。
JDBC规范指定的SQL类型的java Object类型标准映射。给定的参数将被转换为相应的SQL类型之前被发送到数据库。
请注意,此方法可用于将特定于数据库的抽象数据类型,通过使用一个驱动程序特定的java类型。如果对象是一个实现接口的类SQLData,JDBC驱动程序应该调用的方法SQLData.writeSQL写的SQL数据流。如果,另一方面,对象是类的实现Ref,Blob,Clob,NClob,Struct,java.net.URL,RowId,SQLXML或Array,司机应该通过对数据库的值为相应的SQL类型。
注:不是所有的数据库都允许非类型化的空被发送到后台。为了获得最大的可移植性,这setNull或setObject(int parameterIndex, Object x, int sqlType)方法应该用来代替setObject(int parameterIndex, Object x)。
注:该方法抛出一个异常如有歧义,例如,如果对象是一个类实现多个接口的命名。
parameterIndex -第一个参数是1,其次是2,…
x包含输入参数值的对象
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或给定对象的类型是模糊的
boolean execute()
throws SQLException
PreparedStatement对象执行SQL语句,这可能是任何类型的SQL语句。一些准备好的语句返回多个结果;的
execute方法处理这些复杂的报表,以及采用
executeQuery和
executeUpdate处理报表的简单形式。
的execute方法返回一个boolean指示的第一个结果的形式。你必须调用方法getResultSet或getUpdateCount检索结果;你必须调用getMoreResults搬到任何后续结果(S)。
true如果第一个结果是一个
ResultSet对象;
false如果第一个结果是一个更新计数或没有结果
SQLException -如果一个数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或参数提供给此方法
SQLTimeoutException -当司机决定了超时值,是由
setQueryTimeout法规定已经超过,至少试图取消当前正在运行的
Statement
Statement.execute(java.lang.String),
Statement.getResultSet(),
Statement.getUpdateCount(),
Statement.getMoreResults()
void addBatch()
throws SQLException
PreparedStatement对象的批。
SQLException -如果一个数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
Statement.addBatch(java.lang.String)
void setCharacterStream(int parameterIndex,
Reader reader,
int length)
throws SQLException
Reader对象,即给定数量的字符。当一个非常大的Unicode值输入到
LONGVARCHAR参数,它可以通过
java.io.Reader对象发送它更实用。将从所需要的数据读取到所需的数据,直到文件结束为止。JDBC驱动程序将从Unicode数据库格式做任何必要的转换。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
parameterIndex -第一个参数是1,其次是2,…
reader -包含Unicode数据的
java.io.Reader对象
length -流中的字符数
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setRef(int parameterIndex,
Ref x)
throws SQLException
REF(<structured-type>)指定参数值。司机将一个SQL
REF价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -一个SQL
REF价值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setBlob(int parameterIndex,
Blob x)
throws SQLException
java.sql.Blob对象指定的参数。司机将一个SQL
BLOB价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -
Blob对象映射一个SQL
BLOB价值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setClob(int parameterIndex,
Clob x)
throws SQLException
java.sql.Clob对象指定的参数。司机将一个SQL
CLOB价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -
Clob对象映射一个SQL
CLOB价值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setArray(int parameterIndex,
Array x)
throws SQLException
java.sql.Array对象指定的参数。司机将一个SQL
ARRAY价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -
Array对象映射一个SQL
ARRAY价值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
ResultSetMetaData getMetaData() throws SQLException
ResultSetMetaData对象所包含的信息的列的
ResultSet对象时将返回该对象执行
PreparedStatement。
因为PreparedStatement对象是预编译的,可以知道ResultSet对象,它将不执行返回。因此,它可以调用的方法getMetaData在PreparedStatement对象而不是等待执行它,然后调用ResultSet.getMetaData方法返回的对象,ResultSet。
注:使用这种方法可能会贵一些司机由于潜在的数据库管理系统支持的缺乏。
ResultSet对象的列或
null描述如果司机不能返回
ResultSetMetaData对象
SQLException -如果一个数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setDate(int parameterIndex,
Date x,
Calendar cal)
throws SQLException
java.sql.Date值,使用给定的
Calendar对象。驱动程序使用的
Calendar对象构造一个SQL
DATE值,驱动程序将它们发送到数据库。一个
Calendar对象,驱动程序可以计算日期考虑自定义时区。如果没有
Calendar对象指定驱动程序使用默认的时区,它的虚拟机中运行的应用程序。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
cal -
Calendar对象的驱动程序将使用构建的日期
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setTime(int parameterIndex,
Time x,
Calendar cal)
throws SQLException
java.sql.Time值,使用给定的
Calendar对象。驱动程序使用的
Calendar对象构造一个SQL
TIME值,驱动程序将它们发送到数据库。一个
Calendar对象,驱动程序可以计算时间考虑自定义时区。如果没有
Calendar对象指定驱动程序使用默认的时区,它的虚拟机中运行的应用程序。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
cal -
Calendar对象的驱动程序将使用构建时间
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setTimestamp(int parameterIndex,
Timestamp x,
Calendar cal)
throws SQLException
java.sql.Timestamp值,使用给定的
Calendar对象。驱动程序使用的
Calendar对象构造一个SQL
TIMESTAMP值,驱动程序将它们发送到数据库。一个
Calendar对象,驱动程序可以计算考虑自定义时区的时间戳。如果没有
Calendar对象指定驱动程序使用默认的时区,它的虚拟机中运行的应用程序。
parameterIndex -第一个参数是1,其次是2,…
x -参数值
cal -
Calendar对象的驱动程序将使用构建的时间戳
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setNull(int parameterIndex,
int sqlType,
String typeName)
throws SQLException
NULL指定参数。这个版本的方法
setNull应该用于用户定义类型和引用类型参数。用户定义的类型的例子包括:结构清晰,java_object,并命名为数组类型。
注:是便携式的,应用程序必须提供的SQL类型代码和完全合格的SQL类型名称当指定一个自定义或ref参数无效。在一个用户定义的类型的情况下,名称是参数本身的类型名称。对于ref参数,名字是引用类型的类型名称。如果一个JDBC驱动程序不需要类型或类型名的信息,它可以忽略它。虽然它的目的是为用户和ref参数,该方法可用于设置任何JDBC类型null参数。如果该参数没有定义或引用类型,指定typename是不容忽视的。
parameterIndex -第一个参数是1,其次是2,…
sqlType从
java.sql.Types值
typeName -一个SQL的完全限定名称的用户定义的类型;如果参数不是一个用户定义类型或裁判无视
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException -如果
sqlType是
ARRAY,
BLOB,
CLOB,
DATALINK,
JAVA_OBJECT,
NCHAR,
NCLOB,
NVARCHAR,
LONGNVARCHAR,
REF,
ROWID,
SQLXML或
STRUCT数据类型和JDBC驱动程序不如果JDBC驱动程序不支持此方法支持这种数据类型或
void setURL(int parameterIndex,
URL x)
throws SQLException
java.net.URL指定参数值。司机将一个SQL
DATALINK价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
x -
java.net.URL对象被设置
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
ParameterMetaData getParameterMetaData() throws SQLException
PreparedStatement对象参数的类型和性质。
ParameterMetaData对象所包含的信息的数量,因为这
PreparedStatement对象的每个参数标记的类型和性质
SQLException -如果一个数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
ParameterMetaData
void setRowId(int parameterIndex,
RowId x)
throws SQLException
java.sql.RowId对象指定的参数。司机将一个SQL
ROWID价值时,它发送到数据库
parameterIndex -第一个参数是1,其次是2,…
x -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setNString(int parameterIndex,
String value)
throws SQLException
String对象指定的参数。司机将一个SQL
NCHAR或
NVARCHAR或
LONGNVARCHAR值(取决于参数的大小相对论
NVARCHAR值驾驶极限)时,发送到数据库。
parameterIndex - 1,其次是2,…
value -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果驱动程序不支持国家字符集;如果驱动程序可以检测到一个数据转换错误可能发生;如果一个数据库访问错误;或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setNCharacterStream(int parameterIndex,
Reader value,
long length)
throws SQLException
Reader对象指定的参数。的
Reader读取数据直到文件结束了。司机从java字符格式设置数据库中的民族性格的必要的转换。
parameterIndex - 1,其次是2,…
value -参数值
length在参数数据的字符数。
SQLException如果参数指标不符合SQL语句中的参数标记;如果驱动程序不支持国家字符集;如果驱动程序可以检测到一个数据转换错误可能发生;如果一个数据库访问错误;或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setNClob(int parameterIndex,
NClob value)
throws SQLException
java.sql.NClob对象指定的参数。司机将一个SQL
NCLOB价值时,它发送到数据库。
parameterIndex -第一个参数是1,其次是2,…
value -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果驱动程序不支持国家字符集;如果驱动程序可以检测到一个数据转换错误可能发生;如果一个数据库访问错误;或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setClob(int parameterIndex,
Reader reader,
long length)
throws SQLException
Reader对象指定的参数。读者必须包含指定的字符数的长度,否则
SQLException时会产生
PreparedStatement执行。这种方法不同于
setCharacterStream (int, Reader, int)方法因为它通知驱动程序,参数值应为
CLOB发送到服务器。当
setCharacterStream方法时,司机可能需要做额外的工作来确定参数的数据应作为一个
LONGVARCHAR或
CLOB发送到服务器
parameterIndex -第一个参数指数为1,其次是2,…
reader对象包含要设置的参数值的数据。
length在参数数据的字符数。
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或者指定的长度小于零。
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setBlob(int parameterIndex,
InputStream inputStream,
long length)
throws SQLException
InputStream对象指定的参数。InputStream必须包含指定的字符数的长度,否则
SQLException时会产生
PreparedStatement执行。这种方法不同于
setBinaryStream (int, InputStream, int)方法因为它通知驱动程序,参数值应为
BLOB发送到服务器。当
setBinaryStream方法时,司机可能需要做额外的工作来确定参数的数据应作为一个
LONGVARBINARY或
BLOB发送到服务器
parameterIndex -第一个参数指数为1,其次是2,…
inputStream对象包含要设置的参数值的数据。
length在参数数据的字节数。
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement;如果指定长度小于零或如果在InputStream字节数不匹配指定的长度。
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setNClob(int parameterIndex,
Reader reader,
long length)
throws SQLException
Reader对象指定的参数。读者必须包含指定的字符数的长度,否则
SQLException时会产生
PreparedStatement执行。这种方法不同于
setCharacterStream (int, Reader, int)方法因为它通知驱动程序,参数值应为
NCLOB发送到服务器。当
setCharacterStream方法时,司机可能需要做额外的工作来确定参数的数据应作为一个
LONGNVARCHAR或
NCLOB发送到服务器
parameterIndex -第一个参数指数为1,其次是2,…
reader对象包含要设置的参数值的数据。
length在参数数据的字符数。
SQLException如果参数指标不符合SQL语句中的参数标记;如果指定长度小于零;如果驱动程序不支持国家字符集;如果驱动程序可以检测到一个数据转换错误可能发生;如果发生错误或数据库访问调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setSQLXML(int parameterIndex,
SQLXML xmlObject)
throws SQLException
java.sql.SQLXML对象指定的参数。司机将一个SQL
XML价值时,它发送到数据库。
parameterIndex -第一个参数指数为1,其次是2,…
xmlObject -
SQLXML对象映射一个SQL
XML价值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或
java.xml.transform.Result,
Writer或
OutputStream尚未关闭的
SQLXML对象
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setObject(int parameterIndex,
Object x,
int targetSqlType,
int scaleOrLength)
throws SQLException
用给定的对象设置指定参数的值。如果第二个参数是一个InputStream然后流必须包含指定的字节数scaleorlength。如果第二个参数是一个Reader然后读者必须包含指定的字符数scaleorlength。如果这些条件不正确的驱动程序将生成一个SQLException当准备执行语句。
给定的java对象将转换为给定的targetsqltype之前被发送到数据库。如果对象有一个自定义的映射(是实现接口的SQLData类),JDBC驱动程序应该调用的方法SQLData.writeSQL写的SQL数据流。如果,另一方面,对象是类的实现Ref,Blob,Clob,NClob,Struct,java.net.URL,或Array,司机应该通过对数据库的值为相应的SQL类型。
请注意,此方法可用于传递特定于数据库的抽象数据类型。
parameterIndex -第一个参数是1,其次是2,…
x包含输入参数值的对象
targetSqlType的SQL类型(如java,SQL类型定义)被发送到数据库。规模参数可以进一步限定这种类型。
scaleOrLength -
java.sql.Types.DECIMAL或
java.sql.Types.NUMERIC types,这是小数点后的位数。java对象类型
InputStream和
Reader,这是在流或读者的数据长度。对于所有其他类型,此值将被忽略。
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或者指定x的java对象是一个InputStream或Reader对象和尺度参数的值小于零
SQLFeatureNotSupportedException如果JDBC驱动程序不支持指定的targetsqltype
Types
void setAsciiStream(int parameterIndex,
InputStream x,
long length)
throws SQLException
LONGVARCHAR参数,它可以通过
java.io.InputStream送它更实用。将数据从流中读到的需要直到文件结束了。JDBC驱动程序将从ASCII格式的数据库做任何必要的转换。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
parameterIndex -第一个参数是1,其次是2,…
x - java输入流包含ASCII码的参数值
length在流的字节数
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setBinaryStream(int parameterIndex,
InputStream x,
long length)
throws SQLException
LONGVARBINARY参数,它可以通过
java.io.InputStream对象发送它更实用。将从所需要的数据读取到所需的数据,直到文件结束为止。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
parameterIndex -第一个参数是1,其次是2,…
x - java输入流包含二进制参数值
length在流的字节数
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setCharacterStream(int parameterIndex,
Reader reader,
long length)
throws SQLException
Reader对象,即给定数量的字符。当一个非常大的Unicode值输入到
LONGVARCHAR参数,它可以通过
java.io.Reader对象发送它更实用。将从所需要的数据读取到所需的数据,直到文件结束为止。JDBC驱动程序将从Unicode数据库格式做任何必要的转换。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
parameterIndex -第一个参数是1,其次是2,…
reader -包含Unicode数据的
java.io.Reader对象
length -流中的字符数
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
void setAsciiStream(int parameterIndex,
InputStream x)
throws SQLException
LONGVARCHAR参数,它可以通过
java.io.InputStream送它更实用。将从所需的数据流中读取数据,直到达到文件结束为止。JDBC驱动程序将从ASCII格式的数据库做任何必要的转换。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
注:咨询你的JDBC驱动程序文件以确定它是否可以更有效地使用一个版本的setAsciiStream以长度参数。
parameterIndex -第一个参数是1,其次是2,…
x - java输入流包含ASCII码的参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setBinaryStream(int parameterIndex,
InputStream x)
throws SQLException
LONGVARBINARY参数,它可以通过
java.io.InputStream对象发送它更实用。将从所需要的数据读取到所需的数据,直到文件结束为止。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
注:咨询你的JDBC驱动程序文件以确定它是否可以更有效地使用一个版本的setBinaryStream以长度参数。
parameterIndex -第一个参数是1,其次是2,…
x - java输入流包含二进制参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setCharacterStream(int parameterIndex,
Reader reader)
throws SQLException
Reader对象指定的参数。当一个非常大的Unicode值输入到
LONGVARCHAR参数,它可以通过
java.io.Reader对象发送它更实用。将从所需要的数据读取到所需的数据,直到文件结束为止。JDBC驱动程序将从Unicode数据库格式做任何必要的转换。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
注:咨询你的JDBC驱动程序文件以确定它是否可以更有效地使用一个版本的setCharacterStream以长度参数。
parameterIndex -第一个参数是1,其次是2,…
reader -包含Unicode数据的
java.io.Reader对象
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setNCharacterStream(int parameterIndex,
Reader value)
throws SQLException
Reader对象指定的参数。的
Reader读取数据直到文件结束了。司机从java字符格式设置数据库中的民族性格的必要的转换。
注:这个流对象可以是一个标准的java流对象或自己的子类实现的接口标准。
注:咨询你的JDBC驱动程序文件以确定它是否可以更有效地使用一个版本的setNCharacterStream以长度参数。
parameterIndex - 1,其次是2,…
value -参数值
SQLException如果参数指标不符合SQL语句中的参数标记;如果驱动程序不支持国家字符集;如果驱动程序可以检测到一个数据转换错误可能发生;如果一个数据库访问错误;或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setClob(int parameterIndex,
Reader reader)
throws SQLException
Reader对象指定的参数。这种方法不同于
setCharacterStream (int, Reader)方法因为它通知驱动程序,参数值应为
CLOB发送到服务器。当
setCharacterStream方法时,司机可能需要做额外的工作来确定参数的数据应作为一个
LONGVARCHAR或
CLOB
注:咨询你的JDBC驱动程序文件以确定它是否可以更有效地使用一个版本的setClob以长度参数。
parameterIndex -第一个参数指数为1,其次是2,…
reader对象包含要设置的参数值的数据。
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误;这种方法被称为在一个封闭的
PreparedStatementor如果参数指标不符合SQL语句中的参数标记
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setBlob(int parameterIndex,
InputStream inputStream)
throws SQLException
InputStream对象指定的参数。这种方法不同于
setBinaryStream (int, InputStream)方法因为它通知驱动程序,参数值应为
BLOB发送到服务器。当
setBinaryStream方法时,司机可能需要做额外的工作来确定参数的数据应作为一个
LONGVARBINARY或
BLOB
注:咨询你的JDBC驱动程序文件以确定它是否可以更有效地使用一个版本的setBlob以长度参数。
parameterIndex -第一个参数指数为1,其次是2,…
inputStream对象包含要设置的参数值的数据。
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或者参数指标不符合SQL语句中的参数标记,
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
void setNClob(int parameterIndex,
Reader reader)
throws SQLException
Reader对象指定的参数。这种方法不同于
setCharacterStream (int, Reader)方法因为它通知驱动程序,参数值应为
NCLOB发送到服务器。当
setCharacterStream方法时,司机可能需要做额外的工作来确定参数的数据应作为一个
LONGNVARCHAR或
NCLOB
注:咨询你的JDBC驱动程序文件以确定它是否可以更有效地使用一个版本的setNClob以长度参数。
parameterIndex -第一个参数指数为1,其次是2,…
reader对象包含要设置的参数值的数据。
SQLException如果参数指标不符合SQL语句中的参数标记;如果驱动程序不支持国家字符集;如果驱动程序可以检测到一个数据转换错误可能发生;如果发生错误或数据库访问调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持此方法
default void setObject(int parameterIndex,
Object x,
SQLType targetSqlType,
int scaleOrLength)
throws SQLException
用给定的对象设置指定参数的值。如果第二个参数是一个InputStream然后流必须包含指定的字节数scaleorlength。如果第二个参数是一个Reader然后读者必须包含指定的字符数scaleorlength。如果这些条件不正确的驱动程序将生成一个SQLException当准备执行语句。
给定的java对象将转换为给定的targetsqltype之前被发送到数据库。如果对象有一个自定义的映射(是实现接口的SQLData类),JDBC驱动程序应该调用的方法SQLData.writeSQL写的SQL数据流。如果,另一方面,对象是类的实现Ref,Blob,Clob,NClob,Struct,java.net.URL,或Array,司机应该通过对数据库的值为相应的SQL类型。
请注意,此方法可用于传递特定于数据库的抽象数据类型。
默认实现将SQLFeatureNotSupportedException
parameterIndex -第一个参数是1,其次是2,…
x包含输入参数值的对象
targetSqlType的SQL类型被发送到数据库。规模参数可以进一步限定这种类型。
scaleOrLength -
java.sql.JDBCType.DECIMAL或
java.sql.JDBCType.NUMERIC types,这是小数点后的位数。java对象类型
InputStream和
Reader,这是在流或读者的数据长度。对于所有其他类型,此值将被忽略。
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement或者指定x的java对象是一个InputStream或Reader对象和尺度参数的值小于零
SQLFeatureNotSupportedException如果JDBC驱动程序不支持指定的targetsqltype
JDBCType,
SQLType
default void setObject(int parameterIndex,
Object x,
SQLType targetSqlType)
throws SQLException
setObject(int parameterIndex, Object x, SQLType targetSqlType, int scaleOrLength),除了它假定零规模。
默认实现将SQLFeatureNotSupportedException
parameterIndex -第一个参数是1,其次是2,…
x包含输入参数值的对象
targetSqlType的SQL类型被发送到数据库
SQLException如果参数指标不符合SQL语句中的参数标记;如果数据库访问错误发生或调用此方法在一个封闭的
PreparedStatement
SQLFeatureNotSupportedException如果JDBC驱动程序不支持指定的targetsqltype
JDBCType,
SQLType
default long executeLargeUpdate()
throws SQLException
PreparedStatement对象执行SQL语句,它必须是一个SQL数据操作语言(DML)语句,如
INSERT,
UPDATE或
DELETE;或一个SQL语句没有返回,如DDL语句。
这一方法时应使用返回的行数可能超过Integer.MAX_VALUE。
默认实现将UnsupportedOperationException
SQLException -如果一个数据库访问错误;这种方法被称为在一个封闭的
PreparedStatement或SQL语句返回
ResultSet对象
SQLTimeoutException -当司机决定了超时值,是由
setQueryTimeout法规定已经超过,至少试图取消当前正在运行的
Statement
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.