public interface PreparedStatement extends Statement
SQL语句已预编译并存储在PreparedStatement
对象中。 然后可以使用该对象多次有效地执行此语句。
注意:setter方法( setShort
, setString
用于设置IN参数值必须指定与所定义的SQL类型的输入参数的兼容的类型,等等)。 例如,如果IN参数具有SQL类型INTEGER
,则应使用方法setInt
。
如果需要任意参数类型转换,方法setObject
应与目标SQL类型一起使用。
在设定的参数的以下示例中, con
表示一个活动连接:
PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES
SET SALARY = ? WHERE ID = ?");
pstmt.setBigDecimal(1, 153833.00)
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()
执行在该SQL语句 PreparedStatement 对象,它必须是一个SQL数据操纵语言(DML)语句,如INSERT , UPDATE 或DELETE ;
或不返回任何内容的SQL语句,例如DDL语句。
|
ResultSet |
executeQuery()
执行此
PreparedStatement 对象中的SQL查询,并返回查询
PreparedStatement 的
ResultSet 对象。
|
int |
executeUpdate()
执行在该SQL语句 PreparedStatement 对象,它必须是一个SQL数据操纵语言(DML)语句,如INSERT , UPDATE 或DELETE ;
或不返回任何内容的SQL语句,例如DDL语句。
|
ResultSetMetaData |
getMetaData()
检索一个
ResultSetMetaData 对象,其中包含有关执行此
PreparedStatement 对象时将返回的
ResultSet 对象的列的信息。
|
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 设置为给定的
java.sql.Date 值。
|
void |
setDate(int parameterIndex, Date x, Calendar cal)
使用给定的
Calendar 对象将指定的
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 |
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)
使用给定的
Calendar 对象将指定的
Calendar 设置为给定的
java.sql.Time 值。
|
void |
setTimestamp(int parameterIndex, Timestamp x)
将指定的参数设置为给定的
java.sql.Timestamp 值。
|
void |
setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
使用给定的
Calendar 对象将指定的
Calendar 设置为给定的
java.sql.Timestamp 值。
|
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, setQueryTimeout
isWrapperFor, unwrap
ResultSet executeQuery() throws SQLException
PreparedStatement
对象中的SQL查询,并返回查询
PreparedStatement
的
ResultSet
对象。
ResultSet
对象;
从不null
SQLException
- 如果发生数据库访问错误;
这个方法在一个封闭的PreparedStatement
上被调用,或者SQL语句不返回一个ResultSet
对象
SQLTimeoutException
- 当驱动程序确定已经超过了
setQueryTimeout
方法指定的超时值,并且至少尝试取消当前运行的
Statement
int executeUpdate() throws SQLException
PreparedStatement
对象,它必须是一个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
-
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驱动程序不支持此数据类型
void setBoolean(int parameterIndex, boolean x) throws SQLException
boolean
值。
当驱动程序将其发送到数据库时,将其转换为SQL BIT
或BOOLEAN
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex与SQL语句中的参数标记不对应;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setByte(int parameterIndex, byte x) throws SQLException
byte
值。
当驱动程序将其发送到数据库时,将其转换为SQL TINYINT
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setShort(int parameterIndex, short x) throws SQLException
short
值。
当驱动程序将其发送到数据库时,将其转换为SQL SMALLINT
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setInt(int parameterIndex, int x) throws SQLException
int
值。
当驱动程序将其发送到数据库时,将其转换为SQL INTEGER
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setLong(int parameterIndex, long x) throws SQLException
long
值。
当驱动程序将其发送到数据库时,将其转换为SQL BIGINT
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setFloat(int parameterIndex, float x) throws SQLException
float
值。
当驱动程序将其发送到数据库时,将其转换为SQL REAL
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setDouble(int parameterIndex, double x) throws SQLException
double
值。
当驱动程序将其发送到数据库时,将其转换为SQL DOUBLE
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setBigDecimal(int parameterIndex, BigDecimal x) throws SQLException
java.math.BigDecimal
值。
当驱动程序将其发送到数据库时,将其转换为SQL NUMERIC
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setString(int parameterIndex, String x) throws SQLException
String
值。
驱动程序将其转换为SQL VARCHAR
或LONGVARCHAR
值(取决于参数相对于VARCHAR
值的驱动程序限制的大小),当它发送到数据库时。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在关闭的PreparedStatement
上调用此方法
void setBytes(int parameterIndex, byte[] x) throws SQLException
VARBINARY
或LONGVARBINARY
(取决于参数相对于VARBINARY
值的驱动程序限制的大小),当它发送到数据库时。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setDate(int parameterIndex, Date x) throws SQLException
java.sql.Date
设置为给定的java.sql.Date
值。
当驱动程序将其发送到数据库时,将其转换为SQL DATE
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setTime(int parameterIndex, Time x) throws SQLException
java.sql.Time
值。
当驱动程序将其发送到数据库时,将其转换为SQL TIME
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setTimestamp(int parameterIndex, Timestamp x) throws SQLException
java.sql.Timestamp
值。
当驱动程序将其发送到数据库时,将其转换为SQL TIMESTAMP
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setAsciiStream(int parameterIndex, InputStream x, int length) throws SQLException
LONGVARCHAR
参数时,通过java.io.InputStream
发送它可能更java.io.InputStream
。
将根据需要从流中读取数据,直到达到文件结尾。
JDBC驱动程序将从ASCII到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 包含ASCII参数值的Java输入流
length
- 流中的字节数
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
@Deprecated void setUnicodeStream(int parameterIndex, InputStream x, int length) throws SQLException
setCharacterStream
LONGVARCHAR
参数时,通过java.io.InputStream
对象发送它可能更实用。
数据将根据需要从流中读取,直到达到文件结尾。
JDBC驱动程序将从Unicode到数据库字符格式进行任何必要的转换。
Unicode流的字节格式必须是Java虚拟机规范中定义的Java UTF-8。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 一个包含Unicode参数值的
java.io.InputStream
对象
length
- 流中的字节数
SQLException
- 如果parameterIndex不对应于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
- 如果parameterIndex不对应于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.Types中)
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在关闭的PreparedStatement上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType
Types
void 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发送到后端。 为了最大可移植性,应使用setNull
或setObject(int parameterIndex, Object x, int sqlType)
方法代替setObject(int parameterIndex, Object x)
。
注意:如果存在歧义,则此方法会引发异常,例如,如果对象是实现多个上述接口的类。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 包含输入参数值的对象
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误;
这个方法在封闭的PreparedStatement
上被调用,或给定对象的类型是不明确的
boolean execute() throws SQLException
PreparedStatement
对象中的SQL语句,可能是任何类型的SQL语句。
一些准备的语句返回多个结果;
execute
方法处理这些复杂语句以及由方法executeQuery
和executeUpdate
处理的更简单的语句形式。
execute
方法返回一个boolean
以指示第一个结果的形式。 您必须调用方法getResultSet
或getUpdateCount
来检索结果; 您必须致电getMoreResults
才能移动到任何后续结果。
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
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setRef(int parameterIndex, Ref x) throws SQLException
REF(<structured-type>)
值。
当驱动程序将其发送到数据库时,将其转换为SQL REF
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 一个SQL
REF
值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBlob(int parameterIndex, Blob x) throws SQLException
java.sql.Blob
对象。
当驱动程序将其发送到数据库时,将其转换为SQL BLOB
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 映射SQL
BLOB
值的
Blob
对象
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setClob(int parameterIndex, Clob x) throws SQLException
java.sql.Clob
对象。
当驱动程序将其发送到数据库时,将其转换为SQL CLOB
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 映射SQL
CLOB
值的
Clob
对象
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setArray(int parameterIndex, Array x) throws SQLException
java.sql.Array
对象。
当驱动程序将其发送到数据库时,将其转换为SQL ARRAY
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 映射SQL
ARRAY
值的
Array
对象
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
ResultSetMetaData getMetaData() throws SQLException
ResultSetMetaData
对象,其中包含有关执行此PreparedStatement
对象时将返回的ResultSet
对象的列的信息。
由于PreparedStatement
对象是预编译的,就可以了解ResultSet
对象将返回,而不必执行它。 因此,可以在PreparedStatement
对象上调用方法getMetaData
,而不是等待执行它,然后在返回的ResultSet
对象上调用ResultSet.getMetaData
方法。
注意:由于缺少底层DBMS支持,因此对某些驱动程序而言,使用此方法可能是昂贵的。
ResultSet
对象的列的描述或
null
如果驱动程序不能返回一个
ResultSetMetaData
对象
SQLException
- 如果发生数据库访问错误或者在关闭的
PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setDate(int parameterIndex, Date x, Calendar cal) throws SQLException
Calendar
对象将指定的Calendar
设置为给定的java.sql.Date
值。
驱动程序使用Calendar
对象来构造一个SQL DATE
值,然后驱动程序发送到数据库。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区的日期。
如果没有Calendar
对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
cal
- 驱动程序将用于构建日期的
Calendar
对象
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setTime(int parameterIndex, Time x, Calendar cal) throws SQLException
Calendar
对象将指定的Calendar
设置为给定的java.sql.Time
值。
驱动程序使用Calendar
对象构造一个SQL TIME
值,然后驱动程序将其发送到数据库。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区的时间。
如果没有Calendar
对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
cal
- 驱动程序将用于构建时间的
Calendar
对象
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setTimestamp(int parameterIndex, Timestamp x, Calendar cal) throws SQLException
Calendar
对象将指定的Calendar
设置为给定的java.sql.Timestamp
值。
驱动程序使用Calendar
对象来构造一个SQL TIMESTAMP
值,然后驱动程序将其发送到数据库。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区的时间戳。
如果没有Calendar
对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 参数值
cal
-在
Calendar
对象的驱动程序将用来构造时间戳
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setNull(int parameterIndex, int sqlType, String typeName) throws SQLException
NULL
。
此版本的方法setNull
应用于用户定义的类型和REF类型参数。
用户定义类型的示例包括:STRUCT,DISTINCT,JAVA_OBJECT和命名的数组类型。
注意:为了便于携带,当指定NULL用户定义或REF参数时,应用程序必须给出SQL类型代码和完全限定的SQL类型名称。 在用户定义类型的情况下,名称是参数本身的类型名称。 对于REF参数,名称是引用类型的类型名称。 如果JDBC驱动程序不需要类型代码或类型名称信息,它可能会忽略它。 尽管它是用于用户定义的和参数的参数,但是该方法可以用于设置任何JDBC类型的空值参数。 如果参数没有用户定义或REF类型,则给定的typeName将被忽略。
parameterIndex
- 第一个参数是1,第二个是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驱动程序不支持这种方法
void setURL(int parameterIndex, URL x) throws SQLException
java.net.URL
值。
当驱动程序将其发送到数据库时将其转换为SQL DATALINK
值。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 要设置的
java.net.URL
对象
SQLException
- 如果parameterIndex不对应于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
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNString(int parameterIndex, String value) throws SQLException
String
对象。
当驱动程序将其发送到数据库时,将其转换为SQL NCHAR
或NVARCHAR
或LONGNVARCHAR
值(取决于参数相对于驱动程序对NVARCHAR
的限制的大小)的大小。
parameterIndex
- 第一个参数是1,第二个是2,...
value
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误;
或者这个方法在封闭的PreparedStatement
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException
Reader
对象。
Reader
读取数据,直到达到文件结尾。
驱动程序必须从Java字符格式转换为数据库中的国家字符集。
parameterIndex
- 第一个参数是1,第二个是2,...
value
- 参数值
length
- 参数数据中的字符数。
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误;
或者这个方法在封闭的PreparedStatement
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNClob(int parameterIndex, NClob value) throws SQLException
java.sql.NClob
对象。
当驱动程序将其发送到数据库时,将其转换为SQL NCLOB
值。
parameterIndex
- 第一个参数是1,第二个是2,...
value
- 参数值
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误;
或者这种方法在封闭的PreparedStatement
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setClob(int parameterIndex, Reader reader, long length) throws SQLException
Reader
对象。
读者必须包含由长度指定的SQLException
数,否则当执行PreparedStatement时将PreparedStatement
。
该方法与setCharacterStream (int, Reader, int)
方法不同,因为它通知驱动程序参数值应作为CLOB
发送到服务器。
当使用setCharacterStream
方法时,驱动程序可能需要额外的工作才能确定参数数据是否应该作为LONGVARCHAR
或CLOB
发送到服务器
parameterIndex
- 第一个参数的索引为1,第二个为2,...
reader
- 包含用于设置参数值的数据的对象。
length
- 参数数据中的字符数。
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误;
该方法在封闭的PreparedStatement
上调用,或者指定的长度小于零时调用。
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException
InputStream
对象。
输入流必须包含由长度指定的SQLException
数,否则当执行PreparedStatement时将PreparedStatement
。
该方法与setBinaryStream (int, InputStream, int)
方法不同,因为它通知驱动程序参数值应作为BLOB
发送到服务器。
当使用setBinaryStream
方法时,驱动程序可能需要额外的工作才能确定参数数据是否应当以LONGVARBINARY
或BLOB
发送到服务器
parameterIndex
- 第一个参数的索引为1,第二个为2,...
inputStream
- 包含将参数值设置为的数据的对象。
length
- 参数数据中的字节数。
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误;
这个方法是在封闭的PreparedStatement
;
如果指定的长度小于零,或者输入流中的字节数与指定长度不匹配。
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNClob(int parameterIndex, Reader reader, long length) throws SQLException
Reader
对象。
读者必须包含由长度指定的SQLException
数,否则当执行PreparedStatement时将PreparedStatement
。
该方法与setCharacterStream (int, Reader, int)
方法不同,因为它通知驱动程序参数值应作为NCLOB
发送到服务器。
当使用setCharacterStream
方法时,驱动程序可能不得不进行额外的工作来确定参数数据是否应作为LONGNVARCHAR
或NCLOB
发送到服务器
parameterIndex
- 第一个参数的索引为1,第二个为2,...
reader
- 包含将参数值设置为的数据的对象。
length
- 参数数据中的字符数。
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果指定的长度小于零;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException
java.sql.SQLXML
对象。
当驱动程序将其发送到数据库时,将其转换为SQL XML
值。
parameterIndex
- 第一个参数的索引为1,第二个为2,...
xmlObject
- 映射SQL
XML
值的
SQLXML
对象
SQLException
- 如果parameterIndex不对应于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.Types中定义)。
比例参数可能进一步限定此类型。
scaleOrLength
- 对于java.sql.Types.DECIMAL
或java.sql.Types.NUMERIC types
,这是小数点后的位数。
对于Java对象类型InputStream
和Reader
,这是流或读取器中数据的长度。
对于所有其他类型,此值将被忽略。
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误;
该方法在封闭的PreparedStatement
上调用,或者如果由x指定的Java对象是InputStream或Reader对象,并且scale参数的值小于零
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType
Types
void setAsciiStream(int parameterIndex, InputStream x, long length) throws SQLException
LONGVARCHAR
参数时,通过java.io.InputStream
发送它可能更java.io.InputStream
。
将根据需要从流中读取数据,直到达到文件结尾。
JDBC驱动程序将从ASCII到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 包含ASCII参数值的Java输入流
length
- 流中的字节数
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setBinaryStream(int parameterIndex, InputStream x, long length) throws SQLException
LONGVARBINARY
参数时,通过java.io.InputStream
对象发送它可能更实用。
数据将根据需要从流中读取,直到达到文件结尾。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 包含二进制参数值的java输入流
length
- 流中的字节数
SQLException
- 如果parameterIndex不对应于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
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
void setAsciiStream(int parameterIndex, InputStream x) throws SQLException
LONGVARCHAR
参数时,通过java.io.InputStream
发送它可能更java.io.InputStream
。
将根据需要从流中读取数据,直到达到文件结尾。
JDBC驱动程序将从ASCII到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
注:请参考JDBC驱动程序文档,以确定它可能是更有效地使用一个版本的setAsciiStream
其带长度参数。
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 包含ASCII参数值的Java输入流
SQLException
- 如果parameterIndex不对应于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
- 如果parameterIndex不对应于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
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在关闭的PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNCharacterStream(int parameterIndex, Reader value) throws SQLException
Reader
对象。
Reader
读取数据,直到达到文件结尾。
驱动程序必须从Java字符格式转换为数据库中的国家字符集。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
注:请参考JDBC驱动程序文档,以确定它可能是更有效地使用一个版本的setNCharacterStream
其带长度参数。
parameterIndex
- 第一个参数是1,第二个是2,...
value
- 参数值
SQLException
- 如果parameterIndex不对应于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
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误;
这个方法在封闭的PreparedStatement
上调用,或者如果parameterIndex不对应于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
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误;
该方法在封闭的PreparedStatement
上调用,或者如果parameterIndex与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
- 如果parameterIndex不对应于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
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法,或者如果x指定的Java对象是InputStream或Reader对象,并且scale参数的值小于零
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)
,除了它假定为0的比例。
默认实现将抛出SQLFeatureNotSupportedException
parameterIndex
- 第一个参数是1,第二个是2,...
x
- 包含输入参数值的对象
targetSqlType
- 要发送到数据库的SQL类型
SQLException
- 如果parameterIndex不对应于SQL语句中的参数标记;
如果发生数据库访问错误或在封闭的PreparedStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType
JDBCType
, SQLType
default long executeLargeUpdate() throws SQLException
PreparedStatement
对象,它必须是一个SQL数据操纵语言(DML)语句,如INSERT
, UPDATE
或DELETE
;
或不返回任何内容的SQL语句,例如DDL语句。
当返回的行数可能超过Integer.MAX_VALUE
时,应使用此方法。
默认实现将抛出UnsupportedOperationException
SQLException
- 如果发生数据库访问错误;
这个方法在一个封闭的PreparedStatement
上被调用,或者SQL语句返回一个ResultSet
对象
SQLTimeoutException
- 当驱动程序确定已经超过了
setQueryTimeout
方法指定的超时值,并且至少尝试取消当前运行的
Statement