- 所有超接口:
-
AutoCloseable
,PreparedStatement
,Statement
,Wrapper
{?= call <procedure-name>[(<arg1>,<arg2>, ...)]} {call <procedure-name>[(<arg1>,<arg2>, ...)]}
使用从PreparedStatement
继承的set
方法设置IN参数值。在执行存储过程之前,必须注册所有OUT参数的类型;它们的值在执行后通过此处提供的get
方法检索。
CallableStatement
可以返回一个ResultSet
对象或多个ResultSet
对象。使用从Statement
继承的操作处理多个ResultSet
对象。
为了最大的可移植性,在获取输出参数的值之前应处理调用的ResultSet
对象和更新计数。
- 自版本:
- 1.1
- 参见:
-
Field Summary
Fields declared in interface java.sql.Statement
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO
-
Method Summary
Modifier and TypeMethodDescriptiongetArray
(int parameterIndex) 以Java编程语言中的Array
对象形式检索指定的JDBCARRAY
参数的值。以Java编程语言中的Array
对象形式检索JDBCARRAY
参数的值。getBigDecimal
(int parameterIndex) 以Java编程语言中的java.math.BigDecimal
对象形式检索指定的JDBCNUMERIC
参数的值,小数点右侧的位数与值包含的位数相同。getBigDecimal
(int parameterIndex, int scale) 已弃用。getBigDecimal
(String parameterName) 以Java编程语言中的java.math.BigDecimal
对象形式检索JDBCNUMERIC
参数的值,小数点右侧的位数与值包含的位数相同。getBlob
(int parameterIndex) 以Java编程语言中的Blob
对象形式检索指定的JDBCBLOB
参数的值。以Java编程语言中的Blob
对象形式检索JDBCBLOB
参数的值。boolean
getBoolean
(int parameterIndex) 以Java编程语言中的boolean
形式检索指定的JDBCBIT
或BOOLEAN
参数的值。boolean
getBoolean
(String parameterName) 以Java编程语言中的boolean
形式检索JDBCBIT
或BOOLEAN
参数的值。byte
getByte
(int parameterIndex) 以Java编程语言中的byte
形式检索指定的JDBCTINYINT
参数的值。byte
以Java编程语言中的byte
形式检索JDBCTINYINT
参数的值。byte[]
getBytes
(int parameterIndex) 以Java编程语言中的byte
值数组形式检索指定的JDBCBINARY
或VARBINARY
参数的值。byte[]
以Java编程语言中的byte
值数组形式检索JDBCBINARY
或VARBINARY
参数的值。getCharacterStream
(int parameterIndex) 以Java编程语言中的java.io.Reader
对象形式检索指定参数的值。getCharacterStream
(String parameterName) 以Java编程语言中的java.io.Reader
对象形式检索指定参数的值。getClob
(int parameterIndex) 以Java编程语言中的java.sql.Clob
对象形式检索指定的JDBCCLOB
参数的值。以Java编程语言中的java.sql.Clob
对象形式检索JDBCCLOB
参数的值。getDate
(int parameterIndex) 以java.sql.Date
对象形式检索指定的JDBCDATE
参数的值。以给定的Calendar
对象构造日期的方式,以java.sql.Date
对象形式检索指定的JDBCDATE
参数的值。以java.sql.Date
对象形式检索JDBCDATE
参数的值。以给定的Calendar
对象构造日期的方式,以java.sql.Date
对象形式检索JDBCDATE
参数的值。double
getDouble
(int parameterIndex) 以Java编程语言中的double
形式检索指定的JDBCDOUBLE
参数的值。double
以Java编程语言中的double
形式检索JDBCDOUBLE
参数的值。float
getFloat
(int parameterIndex) 以Java编程语言中的float
形式检索指定的JDBCFLOAT
参数的值。float
以Java编程语言中的float
形式检索JDBCFLOAT
参数的值。int
getInt
(int parameterIndex) 以Java编程语言中的int
形式检索指定的JDBCINTEGER
参数的值。int
以Java编程语言中的int
形式检索JDBCINTEGER
参数的值。long
getLong
(int parameterIndex) 以Java编程语言中的long
形式检索指定的JDBCBIGINT
参数的值。long
以Java编程语言中的long
形式检索JDBCBIGINT
参数的值。getNCharacterStream
(int parameterIndex) 以Java编程语言中的java.io.Reader
对象形式检索指定参数的值。getNCharacterStream
(String parameterName) 以Java编程语言中的java.io.Reader
对象形式检索指定参数的值。getNClob
(int parameterIndex) 以Java编程语言中的java.sql.NClob
对象形式检索指定的JDBCNCLOB
参数的值。以Java编程语言中的java.sql.NClob
对象形式检索JDBCNCLOB
参数的值。getNString
(int parameterIndex) 以Java编程语言中的String
形式检索指定的NCHAR
、NVARCHAR
或LONGNVARCHAR
参数的值。getNString
(String parameterName) 以Java编程语言中的String
形式检索指定的NCHAR
、NVARCHAR
或LONGNVARCHAR
参数的值。getObject
(int parameterIndex) 以Java编程语言中的Object
形式检索指定参数的值。<T> T
返回表示OUT参数parameterIndex
值的对象,并将从参数的SQL类型转换为请求的Java数据类型,如果支持转换。返回表示OUT参数parameterIndex
值的对象,并使用map
自定义映射参数值。以Java编程语言中的Object
形式检索参数的值。<T> T
返回表示OUT参数parameterName
值的对象,并将从参数的SQL类型转换为请求的Java数据类型,如果支持转换。返回表示OUT参数parameterName
值的对象,并使用map
自定义映射参数值。getRef
(int parameterIndex) 以Java编程语言中的Ref
对象形式检索指定的JDBCREF(<structured-type>)
参数的值。以Java编程语言中的Ref
对象形式检索JDBCREF(<structured-type>)
参数的值。getRowId
(int parameterIndex) 以java.sql.RowId
对象形式检索指定的JDBCROWID
参数的值。以java.sql.RowId
对象形式检索指定的JDBCROWID
参数的值。short
getShort
(int parameterIndex) 以Java编程语言中的short
形式检索指定的JDBCSMALLINT
参数的值。short
以Java编程语言中的short
形式检索JDBCSMALLINT
参数的值。getSQLXML
(int parameterIndex) 以Java编程语言中的java.sql.SQLXML
对象形式检索指定的SQL XML
参数的值。以Java编程语言中的java.sql.SQLXML
对象形式检索指定的SQL XML
参数的值。getString
(int parameterIndex) 以Java编程语言中的String
形式检索指定的JDBCCHAR
、VARCHAR
或LONGVARCHAR
参数的值。以Java编程语言中的String
形式检索JDBCCHAR
、VARCHAR
或LONGVARCHAR
参数的值。getTime
(int parameterIndex) 以Java编程语言中的Ref
对象形式检索指定的JDBCREF(<structured-type>)
参数的值。以Java编程语言中的Ref
对象形式检索JDBCREF(<structured-type>)
参数的值。检索将JDBCTIME
参数的值作为java.sql.Time
对象。检索将JDBCTIME
参数的值作为java.sql.Time
对象,使用给定的Calendar
对象构造时间。getTimestamp
(int parameterIndex) 检索指定的JDBCTIMESTAMP
参数的值作为java.sql.Timestamp
对象。getTimestamp
(int parameterIndex, Calendar cal) 检索指定的JDBCTIMESTAMP
参数的值作为java.sql.Timestamp
对象,使用给定的Calendar
对象构造Timestamp
对象。getTimestamp
(String parameterName) 检索JDBCTIMESTAMP
参数的值作为java.sql.Timestamp
对象。getTimestamp
(String parameterName, Calendar cal) 检索JDBCTIMESTAMP
参数的值作为java.sql.Timestamp
对象,使用给定的Calendar
对象构造Timestamp
对象。getURL
(int parameterIndex) 检索指定的JDBCDATALINK
参数的值作为java.net.URL
对象。检索JDBCDATALINK
参数的值作为java.net.URL
对象。void
registerOutParameter
(int parameterIndex, int sqlType) 将序号位置为parameterIndex
的OUT参数注册为JDBC类型sqlType
。void
registerOutParameter
(int parameterIndex, int sqlType, int scale) 将序号位置为parameterIndex
的参数注册为JDBC类型sqlType
。void
registerOutParameter
(int parameterIndex, int sqlType, String typeName) 注册指定的输出参数。default void
registerOutParameter
(int parameterIndex, SQLType sqlType) 将序号位置为parameterIndex
的OUT参数注册为JDBC类型sqlType
。default void
registerOutParameter
(int parameterIndex, SQLType sqlType, int scale) 将序号位置为parameterIndex
的参数注册为JDBC类型sqlType
。default void
registerOutParameter
(int parameterIndex, SQLType sqlType, String typeName) 注册指定的输出参数。void
registerOutParameter
(String parameterName, int sqlType) 将名为parameterName
的OUT参数注册为JDBC类型sqlType
。void
registerOutParameter
(String parameterName, int sqlType, int scale) 将名为parameterName
的参数注册为JDBC类型sqlType
。void
registerOutParameter
(String parameterName, int sqlType, String typeName) 注册指定的输出参数。default void
registerOutParameter
(String parameterName, SQLType sqlType) 将名为parameterName
的OUT参数注册为JDBC类型sqlType
。default void
registerOutParameter
(String parameterName, SQLType sqlType, int scale) 将名为parameterName
的参数注册为JDBC类型sqlType
。default void
registerOutParameter
(String parameterName, SQLType sqlType, String typeName) 注册指定的输出参数。void
setAsciiStream
(String parameterName, InputStream x) 将指定的参数设置为给定的输入流。void
setAsciiStream
(String parameterName, InputStream x, int length) 将指定的参数设置为给定的输入流,该输入流将具有指定的字节数。void
setAsciiStream
(String parameterName, InputStream x, long length) 将指定的参数设置为给定的输入流,该输入流将具有指定的字节数。void
setBigDecimal
(String parameterName, BigDecimal x) 将指定的参数设置为给定的java.math.BigDecimal
值。void
setBinaryStream
(String parameterName, InputStream x) 将指定的参数设置为给定的输入流。void
setBinaryStream
(String parameterName, InputStream x, int length) 将指定的参数设置为给定的输入流,该输入流将具有指定的字节数。void
setBinaryStream
(String parameterName, InputStream x, long length) 将指定的参数设置为给定的输入流,该输入流将具有指定的字节数。void
setBlob
(String parameterName, InputStream inputStream) 将指定的参数设置为InputStream
对象。void
setBlob
(String parameterName, InputStream inputStream, long length) 将指定的参数设置为InputStream
对象。void
将指定的参数设置为给定的java.sql.Blob
对象。void
setBoolean
(String parameterName, boolean x) 将指定的参数设置为给定的Javaboolean
值。void
将指定的参数设置为给定的Javabyte
值。void
将指定的参数设置为给定的Java字节数组。void
setCharacterStream
(String parameterName, Reader reader) 将指定的参数设置为给定的Reader
对象。void
setCharacterStream
(String parameterName, Reader reader, int length) 将指定的参数设置为给定的Reader
对象,该对象的长度为给定的字符数。void
setCharacterStream
(String parameterName, Reader reader, long length) 将指定的参数设置为给定的Reader
对象,该对象的长度为给定的字符数。void
将指定的参数设置为Reader
对象。void
将指定的参数设置为Reader
对象。void
将指定的参数设置为给定的java.sql.Clob
对象。void
将指定的参数设置为给定的java.sql.Date
值,使用运行应用程序的虚拟机的默认时区。void
将指定的参数设置为给定的java.sql.Date
值,使用给定的Calendar
对象。void
将指定的参数设置为给定的Javadouble
值。void
将指定的参数设置为给定的Javafloat
值。void
将指定的参数设置为给定的Javaint
值。void
将指定的参数设置为给定的Javalong
值。void
setNCharacterStream
(String parameterName, Reader value) 将指定的参数设置为Reader
对象。void
setNCharacterStream
(String parameterName, Reader value, long length) 将指定的参数设置为Reader
对象。void
将指定的参数设置为Reader
对象。void
将指定的参数设置为Reader
对象。void
将指定的参数设置为java.sql.NClob
对象。void
setNString
(String parameterName, String value) 将指定的参数设置为给定的String
对象。void
将指定的参数设置为SQLNULL
。void
将指定的参数设置为SQLNULL
。void
使用给定对象设置指定的参数的值。void
使用给定对象设置指定的参数的值。void
使用给定对象设置指定的参数的值。default void
使用给定对象设置指定的参数的值。default void
使用给定对象设置指定的参数的值。void
将指定的参数设置为给定的java.sql.RowId
对象。void
将指定的参数设置为给定的Javashort
值。void
将指定的参数设置为给定的java.sql.SQLXML
对象。void
将指定的参数设置为给定的JavaString
值。void
将指定的参数设置为给定的java.sql.Time
值。void
将指定的参数设置为给定的java.sql.Time
值,使用给定的Calendar
对象。void
setTimestamp
(String parameterName, Timestamp x) 将指定的参数设置为给定的java.sql.Timestamp
值。void
setTimestamp
(String parameterName, Timestamp x, Calendar cal) 将指定的参数设置为给定的java.sql.Timestamp
值,使用给定的Calendar
对象。void
将指定的参数设置为给定的java.net.URL
对象。boolean
wasNull()
检索最后读取的OUT参数是否具有SQLNULL
的值。Methods declared in interface java.sql.PreparedStatement
addBatch, clearParameters, execute, executeLargeUpdate, executeQuery, executeUpdate, getMetaData, getParameterMetaData, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setRef, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL
Methods declared in interface 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
Methods declared in interface java.sql.Wrapper
isWrapperFor, unwrap
-
Method Details
-
registerOutParameter
将序号位置为parameterIndex
的OUT参数注册为JDBC类型sqlType
。所有OUT参数必须在执行存储过程之前注册。为OUT参数指定的JDBC类型由
sqlType
决定,必须在get
方法中使用相应的Java类型来读取该参数的值。如果期望返回给此输出参数的JDBC类型特定于特定数据库,则
sqlType
应为java.sql.Types.OTHER
。方法getObject(int)
用于检索值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
sqlType
- 由java.sql.Types
定义的JDBC类型代码。如果参数是JDBC类型NUMERIC
或DECIMAL
,应使用接受比例值的registerOutParameter
版本。 - 抛出:
-
SQLException
- 如果parameterIndex
无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果sqlType
是ARRAY
、BLOB
、CLOB
、DATALINK
、JAVA_OBJECT
、NCHAR
、NCLOB
、NVARCHAR
、LONGNVARCHAR
、REF
、ROWID
、SQLXML
或STRUCT
数据类型,且JDBC驱动程序不支持此数据类型 - 参见:
-
registerOutParameter
将序号位置为parameterIndex
的参数注册为JDBC类型sqlType
。所有OUT参数必须在执行存储过程之前注册。为OUT参数指定的JDBC类型由
sqlType
决定,必须在get
方法中使用相应的Java类型来读取该参数的值。当参数是JDBC类型
NUMERIC
或DECIMAL
时,应使用此版本的registerOutParameter
。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
sqlType
- 由java.sql.Types
定义的SQL类型代码。 -
scale
- 小数点右侧所需的位数。必须大于或等于零。 - 抛出:
-
SQLException
- 如果parameterIndex
无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果sqlType
是ARRAY
、BLOB
、CLOB
、DATALINK
、JAVA_OBJECT
、NCHAR
、NCLOB
、NVARCHAR
、LONGNVARCHAR
、REF
、ROWID
、SQLXML
或STRUCT
数据类型,且JDBC驱动程序不支持此数据类型 - 参见:
-
wasNull
检索最后一个读取的OUT参数是否具有SQLNULL
的值。请注意,只有在调用getter方法之后才应调用此方法;否则,无法确定它是否为null
。- 返回值:
-
如果最后一个读取的参数是SQL
NULL
,则返回true
;否则返回false
- 抛出:
-
SQLException
- 如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法
-
getString
检索指定的JDBCCHAR
、VARCHAR
或LONGVARCHAR
参数的值作为Java编程语言中的String
。对于固定长度类型的JDBC
CHAR
,返回的String
对象与数据库中的SQLCHAR
值完全相同,包括数据库添加的任何填充。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getBoolean
检索指定的JDBCBIT
或BOOLEAN
参数的值作为Java编程语言中的boolean
。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为false
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getByte
检索指定的JDBCTINYINT
参数的值作为Java编程语言中的byte
。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为0
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getShort
检索指定的JDBCSMALLINT
参数的值作为Java编程语言中的short
。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为0
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getInt
检索指定的JDBCINTEGER
参数的值作为Java编程语言中的int
。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为0
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getLong
检索指定的JDBCBIGINT
参数的值作为Java编程语言中的long
。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为0
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getFloat
检索指定的JDBCFLOAT
参数的值作为Java编程语言中的float
。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为0
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getDouble
检索指定的JDBCDOUBLE
参数的值作为Java编程语言中的double
。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为0
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getBigDecimal
@Deprecated(since="1.2") BigDecimal getBigDecimal(int parameterIndex, int scale) throws SQLException Deprecated.usegetBigDecimal(int parameterIndex)
orgetBigDecimal(String parameterName)
检索指定的JDBCNUMERIC
参数的值作为具有小数点右侧scale位数的java.math.BigDecimal
对象。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
scale
- 小数点右侧的位数 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 参见:
-
getBytes
检索指定的JDBCBINARY
或VARBINARY
参数的值作为Java编程语言中的byte
值数组。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回值:
-
参数值。如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果参数索引无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getDate
检索指定的JDBCDATE
参数的值作为java.sql.Date
对象。- Parameters:
-
parameterIndex
- the first parameter is 1, the second is 2, and so on - Returns:
-
the parameter value. If the value is SQL
NULL
, the result isnull
. - Throws:
-
SQLException
- if the parameterIndex is not valid; if a database access error occurs or this method is called on a closedCallableStatement
- See Also:
-
getTime
Retrieves the value of the designated JDBCTIME
parameter as ajava.sql.Time
object.- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
参数值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getTimestamp
以java.sql.Timestamp
对象的形式检索指定的JDBCTIMESTAMP
参数的值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
参数值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getObject
以Java编程语言中的Object
形式检索指定参数的值。如果值为SQLNULL
,驱动程序将返回Javanull
。此方法返回一个Java对象,其类型对应于使用方法
registerOutParameter
为该参数注册的JDBC类型。通过将目标JDBC类型注册为java.sql.Types.OTHER
,可以使用此方法读取特定于数据库的抽象数据类型。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
一个持有OUT参数值的
java.lang.Object
- 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 参见:
-
getBigDecimal
以java.math.BigDecimal
对象的形式检索指定的JDBCNUMERIC
参数的值,小数点右侧的位数与值包含的位数相同。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
完整精度的参数值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 自:
- 1.2
- 参见:
-
getObject
返回表示OUT参数parameterIndex
的对象,并使用map
对参数值进行自定义映射。此方法返回一个Java对象,其类型对应于使用方法
registerOutParameter
为该参数注册的JDBC类型。通过将目标JDBC类型注册为java.sql.Types.OTHER
,可以使用此方法读取特定于数据库的抽象数据类型。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
map
- 从SQL类型名称到Java类的映射 - 返回:
-
一个持有OUT参数值的
java.lang.Object
- 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.2
- 参见:
-
getRef
以Java编程语言中的Ref
对象的形式检索指定的JDBCREF(<structured-type>)
参数的值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
参数值作为Java编程语言中的
Ref
对象。如果值为SQLNULL
,则返回值为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.2
-
getBlob
以Java编程语言中的Blob
对象的形式检索指定的JDBCBLOB
参数的值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
参数值作为Java编程语言中的
Blob
对象。如果值为SQLNULL
,则返回值为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.2
-
getClob
以Java编程语言中的java.sql.Clob
对象的形式检索指定的JDBCCLOB
参数的值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
参数值作为Java编程语言中的
Clob
对象。如果值为SQLNULL
,则返回值为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.2
-
getArray
以Java编程语言中的Array
对象的形式检索指定的JDBCARRAY
参数的值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
参数值作为Java编程语言中的
Array
对象。如果值为SQLNULL
,则返回值为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.2
-
getDate
以给定的Calendar
对象构造日期,以Java编程语言中的java.sql.Date
对象的形式检索指定的JDBCDATE
参数的值。使用Calendar
对象,驱动程序可以计算日期,考虑自定义时区和区域设置。如果未指定Calendar
对象,则驱动程序使用默认时区和区域设置。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
cal
- 驱动程序将用于构造日期的Calendar
对象 - 返回:
-
参数值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 自:
- 1.2
- 参见:
-
getTime
以给定的Calendar
对象构造时间,以Java编程语言中的java.sql.Time
对象的形式检索指定的JDBCTIME
参数的值。使用Calendar
对象,驱动程序可以计算时间,考虑自定义时区和区域设置。如果未指定Calendar
对象,则驱动程序使用默认时区和区域设置。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
cal
- 驱动程序将用于构造时间的Calendar
对象 - 返回:
-
参数值;如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果parameterIndex
无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 自版本:
- 1.2
- 参见:
-
getTimestamp
使用给定的Calendar
对象作为构造Timestamp
对象的驱动程序,检索指定的JDBCTIMESTAMP
参数的值作为java.sql.Timestamp
对象。使用Calendar
对象,驱动程序可以根据自定义时区和区域设置计算时间戳。如果未指定Calendar
对象,则驱动程序将使用默认时区和区域设置。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,... -
cal
- 驱动程序将用于构造时间戳的Calendar
对象 - 返回:
-
参数值。如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果parameterIndex
无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 自版本:
- 1.2
- 参见:
-
registerOutParameter
注册指定的输出参数。应该用于用户定义或REF
输出参数的方法registerOutParameter
的此版本。用户定义类型的示例包括:STRUCT
、DISTINCT
、JAVA_OBJECT
和命名数组类型。所有OUT参数必须在执行存储过程之前注册。
对于用户定义的参数,还应提供参数的完全限定SQL类型名称,而
REF
参数要求提供被引用类型的完全限定类型名称。不需要类型代码和类型名称信息的JDBC驱动程序可以忽略它。但为了可移植性,应用程序应始终为用户定义和REF
参数提供这些值。尽管此方法旨在用于用户定义和REF
参数,但也可用于注册任何JDBC类型的参数。如果参数没有用户定义或REF
类型,则将忽略typeName参数。注意: 在读取输出参数的值时,必须使用其Java类型对应于参数注册的SQL类型的getter方法。
- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,... -
sqlType
- 来自Types
的值 -
typeName
- SQL结构化类型的完全限定名称 - 抛出:
-
SQLException
- 如果parameterIndex
无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果sqlType
是ARRAY
、BLOB
、CLOB
、DATALINK
、JAVA_OBJECT
、NCHAR
、NCLOB
、NVARCHAR
、LONGNVARCHAR
、REF
、ROWID
、SQLXML
或STRUCT
数据类型,且JDBC驱动程序不支持此数据类型 - 自版本:
- 1.2
- 参见:
-
registerOutParameter
将名为parameterName
的OUT参数注册为JDBC类型sqlType
。所有OUT参数必须在执行存储过程之前注册。由
sqlType
指定的JDBC类型用于OUT参数,确定必须在get
方法中使用的Java类型来读取该参数的值。如果预期返回给此输出参数的JDBC类型特定于此特定数据库,则
sqlType
应为java.sql.Types.OTHER
。方法getObject(int)
检索值。- 参数:
-
parameterName
- 参数的名称 -
sqlType
- 由java.sql.Types
定义的JDBC类型代码。如果参数是JDBC类型NUMERIC
或DECIMAL
,应使用接受比例值的registerOutParameter
版本。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果sqlType
是ARRAY
、BLOB
、CLOB
、DATALINK
、JAVA_OBJECT
、NCHAR
、NCLOB
、NVARCHAR
、LONGNVARCHAR
、REF
、ROWID
、SQLXML
或STRUCT
数据类型,且JDBC驱动程序不支持此数据类型 - 自版本:
- 1.4
- 参见:
-
registerOutParameter
将名为parameterName
的参数注册为JDBC类型sqlType
。所有OUT参数必须在执行存储过程之前注册。由
sqlType
指定的JDBC类型用于OUT参数,确定必须在get
方法中使用的Java类型来读取该参数的值。当参数为JDBC类型
NUMERIC
或DECIMAL
时,应使用此版本的registerOutParameter
。- 参数:
-
parameterName
- 参数的名称 -
sqlType
- 由java.sql.Types
定义的SQL类型代码 -
scale
- 小数点右侧的所需数字位数。必须大于或等于零。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果sqlType
是ARRAY
、BLOB
、CLOB
、DATALINK
、JAVA_OBJECT
、NCHAR
、NCLOB
、NVARCHAR
、LONGNVARCHAR
、REF
、ROWID
、SQLXML
或STRUCT
数据类型,且JDBC驱动程序不支持此数据类型或如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
registerOutParameter
注册指定的输出参数。应该用于用户命名或REF输出参数的方法registerOutParameter
的此版本。用户命名类型的示例包括:STRUCT、DISTINCT、JAVA_OBJECT和命名数组类型。所有OUT参数必须在执行存储过程之前注册。
对于用户命名参数,还应提供参数的完全限定SQL类型名称,而REF参数要求提供被引用类型的完全限定类型名称。不需要类型代码和类型名称信息的JDBC驱动程序可以忽略它。但为了可移植性,应用程序应始终为用户命名和REF参数提供这些值。尽管此方法旨在用于用户命名和REF参数,但也可用于注册任何JDBC类型的参数。如果参数没有用户命名或REF类型,则忽略typeName参数。
注意: 在读取输出参数的值时,必须使用其Java类型对应于参数注册的SQL类型的
getXXX
方法。- 参数:
-
parameterName
- 参数的名称 -
sqlType
- 来自Types
的值 -
typeName
- SQL结构化类型的完全限定名称 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果sqlType
是ARRAY
、BLOB
、CLOB
、DATALINK
、JAVA_OBJECT
、NCHAR
、NCLOB
、NVARCHAR
、LONGNVARCHAR
、REF
、ROWID
、SQLXML
或STRUCT
数据类型,且JDBC驱动程序不支持此数据类型或如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
getURL
检索指定的JDBCDATALINK
参数的值作为java.net.URL
对象。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,... - 返回:
-
一个
java.net.URL
对象,表示作为指定参数使用的JDBCDATALINK
值 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果在关闭的CallableStatement
上调用此方法或发生数据库访问错误;或者返回的URL在Java平台上不是有效的URL -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setURL
将指定的参数设置为给定的java.net.URL
对象。驱动程序在将其发送到数据库时将其转换为SQLDATALINK
值。- 参数:
-
parameterName
- 参数的名称 -
val
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误;在关闭的CallableStatement
上调用此方法或URL格式不正确 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setNull
将指定的参数设置为SQLNULL
。注意: 您必须指定参数的SQL类型。
- 参数:
-
parameterName
- 参数的名称 -
sqlType
- 在java.sql.Types
中定义的SQL类型代码 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
-
setBoolean
将指定的参数设置为给定的Javaboolean
值。驱动程序在将其发送到数据库时将其转换为SQLBIT
或BOOLEAN
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setByte
将指定的参数设置为给定的Javabyte
值。驱动程序在将其发送到数据库时将其转换为SQLTINYINT
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setShort
将指定的参数设置为给定的Javashort
值。驱动程序在将其发送到数据库时将其转换为SQLSMALLINT
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setInt
将指定的参数设置为给定的Javaint
值。驱动程序在将其发送到数据库时将其转换为SQLINTEGER
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setLong
将指定的参数设置为给定的Javalong
值。驱动程序在将其发送到数据库时将其转换为SQLBIGINT
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setFloat
将指定的参数设置为给定的Javafloat
值。驱动程序在将其发送到数据库时将其转换为SQLFLOAT
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setDouble
将指定的参数设置为给定的Javadouble
值。驱动程序在将其发送到数据库时将其转换为SQLDOUBLE
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setBigDecimal
将指定的参数设置为给定的java.math.BigDecimal
值。驱动程序在将其发送到数据库时将其转换为SQLNUMERIC
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
setString
将指定的参数设置为给定的JavaString
值。驱动程序在将其发送到数据库时将其转换为SQLVARCHAR
或LONGVARCHAR
值(取决于参数相对于驱动程序对VARCHAR
值的限制的大小)。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数的值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setBytes
将指定的参数设置为给定的Java字节数组。当驱动程序将其发送到数据库时,它将将其转换为SQLVARBINARY
或LONGVARBINARY
(取决于参数的大小相对于驱动程序对VARBINARY
值的限制)。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数的值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setDate
将指定的参数设置为给定的java.sql.Date
值,使用运行应用程序的虚拟机的默认时区。当驱动程序将其发送到数据库时,它将将其转换为SQLDATE
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数的值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setTime
将指定的参数设置为给定的java.sql.Time
值。当驱动程序将其发送到数据库时,它将将其转换为SQLTIME
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数的值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setTimestamp
将指定的参数设置为给定的java.sql.Timestamp
值。当驱动程序将其发送到数据库时,它将将其转换为SQLTIMESTAMP
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数的值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setAsciiStream
将指定的参数设置为给定的输入流,该输入流将具有指定的字节数。当将非常大的ASCII值输入到LONGVARCHAR
参数时,通过java.io.InputStream
发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。JDBC驱动程序将执行从ASCII到数据库字符格式的任何必要转换。注意: 此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
- 参数:
-
parameterName
- 参数的名称 -
x
- 包含ASCII参数值的Java输入流 -
length
- 流中的字节数 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
-
setBinaryStream
将指定的参数设置为给定的输入流,该输入流将具有指定的字节数。当将非常大的二进制值输入到LONGVARBINARY
参数时,通过java.io.InputStream
对象发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。注意: 此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
- 参数:
-
parameterName
- 参数的名称 -
x
- 包含二进制参数值的Java输入流 -
length
- 流中的字节数 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
-
setObject
使用给定对象设置指定参数的值。在将对象发送到数据库之前,给定的Java对象将转换为给定的targetSqlType。如果对象具有自定义映射(属于实现接口
SQLData
的类),JDBC驱动程序应调用方法SQLData.writeSQL
将其写入SQL数据流。另一方面,如果对象属于实现Ref
、Blob
、Clob
、NClob
、Struct
、java.net.URL
或Array
的类,驱动程序应将其作为相应SQL类型的值传递给数据库。请注意,此方法可用于传递特定于数据库的抽象数据类型。
- 参数:
-
parameterName
- 参数的名称 -
x
- 包含输入参数值的对象 -
targetSqlType
- 要发送到数据库的SQL类型(如java.sql.Types中定义)。scale参数可能进一步限定此类型。 -
scale
- 对于java.sql.Types.DECIMAL或java.sql.Types.NUMERIC类型,这是小数点后的位数。对于所有其他类型,此值将被忽略。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType - 自版本:
- 1.4
- 参见:
-
setObject
使用给定对象设置指定参数的值。此方法类似于setObject(String parameterName, Object x, int targetSqlType, int scaleOrLength)
,只是它假定比例为零。- 参数:
-
parameterName
- 参数的名称 -
x
- 包含输入参数值的对象 -
targetSqlType
- 要发送到数据库的SQL类型(如java.sql.Types中定义) - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType - 自版本:
- 1.4
- 参见:
-
setObject
设置指定参数的值为给定对象。JDBC规范指定了Java
Object
类型到SQL类型的标准映射。给定的参数将在发送到数据库之前转换为相应的SQL类型。请注意,此方法可用于通过使用特定于驱动程序的Java类型传递特定于数据库的抽象数据类型。如果对象是实现了接口
SQLData
的类的实例,则JDBC驱动程序应调用方法SQLData.writeSQL
将其写入SQL数据流。另一方面,如果对象是实现了Ref
、Blob
、Clob
、NClob
、Struct
、java.net.URL
或Array
的类的实例,则驱动程序应将其作为相应SQL类型的值传递给数据库。如果存在歧义,例如,如果对象是实现了上述多个接口中的一个类的实例,则此方法会抛出异常。
注意:并非所有数据库都允许将非类型化的Null发送到后端。为了最大的可移植性,应该使用
setNull
或setObject(String parameterName, Object x, int sqlType)
方法,而不是setObject(String parameterName, Object x)
。- 参数:
-
parameterName
- 参数的名称 -
x
- 包含输入参数值的对象 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果在关闭的CallableStatement
上调用此方法或给定的Object
参数存在歧义 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setCharacterStream
将指定参数设置为给定的Reader
对象,该对象具有给定的字符长度。当将非常大的UNICODE值输入到LONGVARCHAR
参数时,通过java.io.Reader
对象发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。JDBC驱动程序将执行从UNICODE到数据库字符格式的任何必要转换。注意:此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
- 参数:
-
parameterName
- 参数的名称 -
reader
- 包含作为指定参数使用的UNICODE数据的java.io.Reader
对象 -
length
- 流中的字符数 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
-
setDate
使用给定的Calendar
对象将指定参数设置为给定的java.sql.Date
值。驱动程序使用Calendar
对象构造SQLDATE
值,然后将其发送到数据库。使用Calendar
对象,驱动程序可以根据自定义时区计算日期。如果未指定Calendar
对象,则驱动程序将使用默认时区,即运行应用程序的虚拟机的时区。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 -
cal
- 驱动程序将用于构造日期的Calendar
对象 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setTime
使用给定的Calendar
对象将指定参数设置为给定的java.sql.Time
值。驱动程序使用Calendar
对象构造SQLTIME
值,然后将其发送到数据库。使用Calendar
对象,驱动程序可以根据自定义时区计算时间。如果未指定Calendar
对象,则驱动程序将使用默认时区,即运行应用程序的虚拟机的时区。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 -
cal
- 驱动程序将用于构造时间的Calendar
对象 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setTimestamp
使用给定的Calendar
对象将指定参数设置为给定的java.sql.Timestamp
值。驱动程序使用Calendar
对象构造SQLTIMESTAMP
值,然后将其发送到数据库。使用Calendar
对象,驱动程序可以根据自定义时区计算时间戳。如果未指定Calendar
对象,则驱动程序将使用默认时区,即运行应用程序的虚拟机的时区。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 -
cal
- 驱动程序将用于构造时间戳的Calendar
对象 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
setNull
将指定参数设置为SQLNULL
。此版本的setNull
方法应用于用户定义类型和REF类型参数。用户定义类型的示例包括:STRUCT、DISTINCT、JAVA_OBJECT和命名数组类型。注意:为了可移植,应用程序在指定NULL用户定义或REF参数时必须提供SQL类型代码和完全限定的SQL类型名称。对于用户定义类型,名称是参数本身的类型名称。对于REF参数,名称是引用类型的类型名称。
尽管此方法旨在用于用户定义和Ref参数,但可以用于设置任何JDBC类型的空参数。如果参数没有用户定义或REF类型,则给定的typeName将被忽略。
- 参数:
-
parameterName
- 参数的名称 -
sqlType
- 来自java.sql.Types
的值 -
typeName
- SQL用户定义类型的完全限定名称;如果参数不是用户定义类型或SQLREF
值,则忽略 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
-
getString
以Java编程语言中的String
形式检索JDBCCHAR
、VARCHAR
或LONGVARCHAR
参数的值。对于固定长度类型JDBC
CHAR
,返回的String
对象与数据库中SQLCHAR
值的值完全相同,包括数据库添加的任何填充。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数值。如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
getBoolean
以Java编程语言中的boolean
形式检索JDBCBIT
或BOOLEAN
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为false
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getByte
以Java编程语言中的byte
形式检索JDBCTINYINT
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为0
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getShort
以Java编程语言中的short
形式检索JDBCSMALLINT
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为0
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getInt
以Java编程语言中的int
形式检索JDBCINTEGER
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为0
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getLong
以Java编程语言中的long
形式检索JDBCBIGINT
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为0
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getFloat
以Java编程语言中的float
形式检索JDBCFLOAT
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为0
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getDouble
以Java编程语言中的double
形式检索JDBCDOUBLE
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为0
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getBytes
以Java编程语言中的byte
值数组形式检索JDBCBINARY
或VARBINARY
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getDate
以java.sql.Date
对象形式检索JDBCDATE
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getTime
以java.sql.Time
对象形式检索JDBCTIME
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getTimestamp
以java.sql.Timestamp
对象形式检索JDBCTIMESTAMP
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数的值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自从:
- 1.4
- 参见:
-
getObject
检索Java编程语言中参数的值作为Object
。如果值是SQLNULL
,则驱动程序返回Javanull
。此方法返回一个Java对象,其类型对应于使用方法
registerOutParameter
为此参数注册的JDBC类型。通过将目标JDBC类型注册为java.sql.Types.OTHER
,可以使用此方法读取特定于数据库的抽象数据类型。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
一个包含OUT参数值的
java.lang.Object
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
- 参见:
-
getBigDecimal
将JDBCNUMERIC
参数的值作为java.math.BigDecimal
对象检索,小数点右侧的位数与值包含的位数相同。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
完整精度的参数值。如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
- 参见:
-
getObject
返回表示OUT参数parameterName
值的对象,并使用map
进行参数值的自定义映射。此方法返回一个Java对象,其类型对应于使用方法
registerOutParameter
为此参数注册的JDBC类型。通过将目标JDBC类型注册为java.sql.Types.OTHER
,可以使用此方法读取特定于数据库的抽象数据类型。- 参数:
-
parameterName
- 参数的名称 -
map
- 从SQL类型名称到Java类的映射 - 返回:
-
一个包含OUT参数值的
java.lang.Object
- 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
- 参见:
-
getRef
将JDBCREF(<structured-type>)
参数的值作为Java编程语言中的Ref
对象检索。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数值作为Java编程语言中的
Ref
对象。如果值为SQLNULL
,则返回值null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
-
getBlob
将JDBCBLOB
参数的值作为Java编程语言中的Blob
对象检索。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数值作为Java编程语言中的
Blob
对象。如果值为SQLNULL
,则返回值null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
-
getClob
将JDBCCLOB
参数的值作为Java编程语言中的java.sql.Clob
对象检索。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数值作为Java编程语言中的
Clob
对象。如果值为SQLNULL
,则返回值null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
-
getArray
将JDBCARRAY
参数的值作为Java编程语言中的Array
对象检索。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
参数值作为Java编程语言中的
Array
对象。如果值为SQLNULL
,则返回值null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
-
getDate
将JDBCDATE
参数的值作为java.sql.Date
对象检索,使用给定的Calendar
对象构造日期。使用Calendar
对象,驱动程序可以根据自定义时区和区域设置计算日期。如果未指定Calendar
对象,则驱动程序使用默认时区和区域设置。- 参数:
-
parameterName
- 参数的名称 -
cal
- 驱动程序将用于构造日期的Calendar
对象 - 返回:
-
参数值。如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
- 参见:
-
getTime
将JDBCTIME
参数的值作为java.sql.Time
对象检索,使用给定的Calendar
对象构造时间。使用Calendar
对象,驱动程序可以根据自定义时区和区域设置计算时间。如果未指定Calendar
对象,则驱动程序使用默认时区和区域设置。- 参数:
-
parameterName
- 参数的名称 -
cal
- 驱动程序将用于构造时间的Calendar
对象 - 返回:
-
参数值;如果值为SQL
NULL
,结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.4
- 参见:
-
getTimestamp
将JDBCTIMESTAMP
参数的值作为java.sql.Timestamp
对象检索,使用给定的Calendar
对象构造Timestamp
对象。使用Calendar
对象,驱动程序可以根据自定义时区和区域设置计算时间戳。如果未指定Calendar
对象,则驱动程序使用默认时区和区域设置。- 参数:
-
parameterName
- 参数的名称 -
cal
- 驱动程序将用来构造时间戳的Calendar
对象 - 返回:
-
参数值。如果值为SQL
NULL
,则结果为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
getURL
以java.net.URL
对象的形式检索JDBCDATALINK
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
以Java编程语言中
java.net.URL
对象的形式返回参数值。如果值为SQLNULL
,则返回值为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误,或在关闭的CallableStatement
上调用此方法,或URL存在问题 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.4
- 参见:
-
getRowId
以java.sql.RowId
对象的形式检索指定的JDBCROWID
参数的值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,... - 返回:
-
代表JDBC
ROWID
值的RowId
对象被用作指定的参数。如果参数包含SQLNULL
,则返回一个null
值。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误,或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
getRowId
以java.sql.RowId
对象的形式检索指定的JDBCROWID
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
代表JDBC
ROWID
值的RowId
对象被用作指定的参数。如果参数包含SQLNULL
,则返回一个null
值。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误,或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setRowId
将指定的参数设置为给定的java.sql.RowId
对象。驱动程序在将其发送到数据库时将其转换为SQLROWID
。- 参数:
-
parameterName
- 参数的名称 -
x
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误,或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setNString
将指定的参数设置为给定的String
对象。驱动程序将其转换为SQLNCHAR
或NVARCHAR
或LONGNVARCHAR
- 参数:
-
parameterName
- 要设置的参数的名称 -
value
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误,或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setNCharacterStream
将指定的参数设置为Reader
对象。Reader
读取数据直到达到文件末尾。驱动程序将Java字符格式转换为数据库中的国家字符集。- 参数:
-
parameterName
- 要设置的参数的名称 -
value
- 参数值 -
length
- 参数数据中的字符数。 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误,或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setNClob
将指定的参数设置为java.sql.NClob
对象。该对象实现java.sql.NClob
接口。此NClob
对象映射到SQLNCLOB
。- 参数:
-
parameterName
- 要设置的参数的名称 -
value
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误,或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setClob
将指定的参数设置为Reader
对象。reader
必须包含由长度指定的字符数,否则在执行CallableStatement
时将生成SQLException
。此方法与setCharacterStream (int, Reader, int)
方法不同,因为它通知驱动程序应将参数值作为CLOB
发送到服务器。使用setCharacterStream
方法时,驱动程序可能需要额外工作来确定参数数据应该作为LONGVARCHAR
还是CLOB
发送到服务器- 参数:
-
parameterName
- 要设置的参数的名称 -
reader
- 包含要设置参数值的数据的对象 -
length
- 参数数据中的字符数 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果指定的长度小于零;发生数据库访问错误,或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setBlob
将指定的参数设置为InputStream
对象。Inputstream
必须包含由长度指定的字符数,否则在执行CallableStatement
时将生成SQLException
。此方法与setBinaryStream (int, InputStream, int)
方法不同,因为它通知驱动程序应将参数值作为BLOB
发送到服务器。使用setBinaryStream
方法时,驱动程序可能需要额外工作来确定参数数据应该作为LONGVARBINARY
还是BLOB
发送到服务器- 参数:
-
parameterName
- 要设置的参数的名称,第二个为2,... -
inputStream
- 包含要设置参数值的数据的对象 -
length
- 参数数据中的字节数 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果指定的长度小于零;如果InputStream
中的字节数与指定的长度不匹配;发生数据库访问错误,或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setNClob
将指定的参数设置为Reader
对象。reader
必须包含长度指定的字符数,否则在执行CallableStatement
时将生成SQLException
。 此方法与setCharacterStream (int, Reader, int)
方法不同,因为它通知驱动程序应将参数值作为NCLOB
发送到服务器。 当使用setCharacterStream
方法时,驱动程序可能需要额外工作来确定参数数据应该作为LONGNVARCHAR
还是NCLOB
发送到服务器。- 参数:
-
parameterName
- 要设置的参数的名称 -
reader
- 包含要设置参数值的数据的对象。 -
length
- 参数数据中的字符数。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果指定的长度小于零;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
-
getNClob
以Java编程语言中的java.sql.NClob
对象形式检索指定的JDBCNCLOB
参数的值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 - 返回:
-
作为Java编程语言中
NClob
对象的参数值。如果值为SQLNULL
,则返回值为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
-
getNClob
以Java编程语言中的java.sql.NClob
对象形式检索JDBCNCLOB
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
作为Java编程语言中
NClob
对象的参数值。如果值为SQLNULL
,则返回值为null
。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
-
setSQLXML
将指定的参数设置为给定的java.sql.SQLXML
对象。 驱动程序在将其发送到数据库时将其转换为SQL XML
值。- 参数:
-
parameterName
- 参数的名称 -
xmlObject
- 映射SQL XML
值的SQLXML
对象 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误;在关闭的CallableStatement
上调用此方法或java.xml.transform.Result
,Writer
或OutputStream
未为SQLXML
对象关闭 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
-
getSQLXML
以Java编程语言中的java.sql.SQLXML
对象形式检索指定的SQL XML
参数的值。- 参数:
-
parameterIndex
- 第一个参数的索引为1,第二个为2,... - 返回:
-
映射
SQL XML
值的SQLXML
对象 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
-
getSQLXML
以Java编程语言中的java.sql.SQLXML
对象形式检索指定的SQL XML
参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
映射
SQL XML
值的SQLXML
对象 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
-
getNString
以Java编程语言中的String
形式检索指定的NCHAR
、NVARCHAR
或LONGNVARCHAR
参数的值。对于固定长度类型的JDBC
NCHAR
,返回的String
对象与数据库中的SQLNCHAR
值完全相同,包括数据库添加的任何填充。- 参数:
-
parameterIndex
- 第一个参数的索引为1,第二个为2,... - 返回:
-
映射
NCHAR
、NVARCHAR
或LONGNVARCHAR
值的String
对象 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
- 另请参阅:
-
getNString
以Java编程语言中的String
形式检索指定的NCHAR
、NVARCHAR
或LONGNVARCHAR
参数的值。对于固定长度类型的JDBC
NCHAR
,返回的String
对象与数据库中的SQLNCHAR
值完全相同,包括数据库添加的任何填充。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
映射
NCHAR
、NVARCHAR
或LONGNVARCHAR
值的String
对象 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
- 另请参阅:
-
getNCharacterStream
以Java编程语言中的java.io.Reader
对象形式检索指定参数的值。 在访问NCHAR
、NVARCHAR
和LONGNVARCHAR
参数时使用。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,... - 返回:
-
包含参数值的
java.io.Reader
对象;如果值为SQLNULL
,则在Java编程语言中返回值为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自:
- 1.6
-
getNCharacterStream
以Java编程语言中的java.io.Reader
对象形式检索指定参数的值。 在访问NCHAR
、NVARCHAR
和LONGNVARCHAR
参数时使用。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
一个包含参数值的
java.io.Reader
对象;如果值为SQLNULL
,则在Java编程语言中返回的值为null
- 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
getCharacterStream
以Java编程语言中的java.io.Reader
对象的形式检索指定参数的值。- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,... - 返回:
-
一个包含参数值的
java.io.Reader
对象;如果值为SQLNULL
,则在Java编程语言中返回的值为null
。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 - 自1.6版本起:
- 1.6
-
getCharacterStream
以Java编程语言中的java.io.Reader
对象的形式检索指定参数的值。- 参数:
-
parameterName
- 参数的名称 - 返回:
-
一个包含参数值的
java.io.Reader
对象;如果值为SQLNULL
,则在Java编程语言中返回的值为null
- 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
setBlob
将指定参数设置为给定的java.sql.Blob
对象。当驱动程序将其发送到数据库时,将其转换为SQLBLOB
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 映射SQLBLOB
值的Blob
对象 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
setClob
将指定参数设置为给定的java.sql.Clob
对象。当驱动程序将其发送到数据库时,将其转换为SQLCLOB
值。- 参数:
-
parameterName
- 参数的名称 -
x
- 映射SQLCLOB
值的Clob
对象 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
setAsciiStream
将指定参数设置为给定的输入流,该输入流将具有指定的字节数。当向LONGVARCHAR
参数输入非常大的ASCII值时,通过java.io.InputStream
发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。JDBC驱动程序将执行从ASCII到数据库字符格式的任何必要转换。注意: 此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
- 参数:
-
parameterName
- 参数的名称 -
x
- 包含ASCII参数值的Java输入流 -
length
- 流中的字节数 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
setBinaryStream
将指定参数设置为给定的输入流,该输入流将具有指定的字节数。当向LONGVARBINARY
参数输入非常大的二进制值时,通过java.io.InputStream
对象发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。注意: 此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
- 参数:
-
parameterName
- 参数的名称 -
x
- 包含二进制参数值的Java输入流 -
length
- 流中的字节数 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
setCharacterStream
将指定参数设置为给定的Reader
对象,该对象具有给定的字符数。当向LONGVARCHAR
参数输入非常大的UNICODE值时,通过java.io.Reader
对象发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。JDBC驱动程序将执行从UNICODE到数据库字符格式的任何必要转换。注意: 此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
- 参数:
-
parameterName
- 参数的名称 -
reader
- 包含作为指定参数使用的UNICODE数据的java.io.Reader
对象 -
length
- 流中的字符数 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
setAsciiStream
将指定参数设置为给定的输入流。当向LONGVARCHAR
参数输入非常大的ASCII值时,通过java.io.InputStream
发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。JDBC驱动程序将执行从ASCII到数据库字符格式的任何必要转换。注意: 此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
注意: 请查阅您的JDBC驱动程序文档,以确定是否更有效地使用带有长度参数的
setAsciiStream
版本。- 参数:
-
parameterName
- 参数的名称 -
x
- 包含ASCII参数值的Java输入流 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
setBinaryStream
将指定参数设置为给定的输入流。当向LONGVARBINARY
参数输入非常大的二进制值时,通过java.io.InputStream
对象发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。注意: 此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
注意: 请查阅您的JDBC驱动程序文档,以确定是否更有效地使用带有长度参数的
setBinaryStream
版本。- 参数:
-
parameterName
- 参数的名称 -
x
- 包含二进制参数值的Java输入流 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自1.6版本起:
- 1.6
-
setCharacterStream
将指定的参数设置为给定的Reader
对象。当向LONGVARCHAR
参数输入非常大的UNICODE值时,通过java.io.Reader
对象发送可能更实际。数据将根据需要从流中读取,直到达到文件结尾。JDBC驱动程序将执行从UNICODE到数据库字符格式的任何必要转换。注意:此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
注意:请查阅您的JDBC驱动程序文档,以确定是否更有效地使用带有长度参数的
setCharacterStream
版本。- 参数:
-
parameterName
- 参数的名称 -
reader
- 包含Unicode数据的java.io.Reader
对象 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setNCharacterStream
将指定的参数设置为Reader
对象。Reader
读取数据直到达到文件结尾。驱动程序将执行从Java字符格式到数据库中的国家字符集的必要转换。注意:此流对象可以是标准的Java流对象,也可以是实现标准接口的自定义子类。
注意:请查阅您的JDBC驱动程序文档,以确定是否更有效地使用带有长度参数的
setNCharacterStream
版本。- 参数:
-
parameterName
- 参数的名称 -
value
- 参数值 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setClob
将指定的参数设置为Reader
对象。此方法与setCharacterStream (int, Reader)
方法不同,因为它通知驱动程序参数值应作为CLOB
发送到服务器。当使用setCharacterStream
方法时,驱动程序可能需要额外工作来确定参数数据应该作为LONGVARCHAR
还是CLOB
发送到服务器。注意:请查阅您的JDBC驱动程序文档,以确定是否更有效地使用带有长度参数的
setClob
版本。- 参数:
-
parameterName
- 参数的名称 -
reader
- 包含要设置参数值的数据的对象 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setBlob
将指定的参数设置为InputStream
对象。此方法与setBinaryStream (int, InputStream)
方法不同,因为它通知驱动程序参数值应作为BLOB
发送到服务器。当使用setBinaryStream
方法时,驱动程序可能需要额外工作来确定参数数据应该作为LONGVARBINARY
还是BLOB
发送到服务器。注意:请查阅您的JDBC驱动程序文档,以确定是否更有效地使用带有长度参数的
setBlob
版本。- 参数:
-
parameterName
- 参数的名称 -
inputStream
- 包含要设置参数值的数据的对象 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
setNClob
将指定的参数设置为Reader
对象。此方法与setCharacterStream (int, Reader)
方法不同,因为它通知驱动程序参数值应作为NCLOB
发送到服务器。当使用setCharacterStream
方法时,驱动程序可能需要额外工作来确定参数数据应该作为LONGNVARCHAR
还是NCLOB
发送到服务器。注意:请查阅您的JDBC驱动程序文档,以确定是否更有效地使用带有长度参数的
setNClob
版本。- 参数:
-
parameterName
- 参数的名称 -
reader
- 包含要设置参数值的数据的对象 - 抛出:
-
SQLException
- 如果parameterName不对应命名参数;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.6
-
getObject
返回表示OUT参数parameterIndex
值的对象,并将其从参数的SQL类型转换为请求的Java数据类型,如果支持转换。如果不支持转换或类型为null,则抛出SQLException
。至少,实现必须支持附录B,表B-3中定义的转换以及适当用户定义的SQL类型到实现
SQLData
或Struct
的Java类型的转换。可能支持其他转换,这是供应商定义的。- 类型参数:
-
T
- 由此Class对象建模的类的类型 - 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
type
- 表示要将指定参数转换为的Java数据类型的Class - 返回:
-
一个持有OUT参数值的
type
实例 - 抛出:
-
SQLException
- 如果不支持转换,类型为null或发生其他错误。异常的getCause()方法可能提供更详细的异常,例如,如果发生转换错误 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.7
-
getObject
返回表示OUT参数parameterName
值的对象,并将其从参数的SQL类型转换为请求的Java数据类型,如果支持转换。如果不支持转换或类型为null,则抛出SQLException
。至少,实现必须支持附录B,表B-3中定义的转换以及适当用户定义的SQL类型到实现
SQLData
或Struct
的Java类型的转换。可能支持其他转换,这是供应商定义的。- 类型参数:
-
T
- 由此Class对象建模的类的类型 - 参数:
-
parameterName
- 参数的名称 -
type
- 表示要将指定参数转换为的Java数据类型的Class - 返回:
-
一个持有OUT参数值的
type
实例 - 抛出:
-
SQLException
- 如果不支持转换,类型为null或发生其他错误。异常的getCause()方法可能提供更详细的异常,例如,如果发生转换错误 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法 - 自版本:
- 1.7
-
setObject
default void setObject(String parameterName, 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
- 参数:
-
parameterName
- 参数的名称 -
x
- 包含输入参数值的对象 -
targetSqlType
- 要发送到数据库的SQL类型。scale参数可能进一步限定此类型。 -
scaleOrLength
- 对于java.sql.JDBCType.DECIMAL
或java.sql.JDBCType.NUMERIC types
,这是小数点后的位数。对于Java对象类型InputStream
和Reader
,这是流或读取器中数据的长度。对于所有其他类型,此值将被忽略。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法,或者如果x指定的Java对象是InputStream或Reader对象且scale参数的值小于零 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType - 自版本:
- 1.8
- 参见:
-
setObject
设置具有给定对象的指定参数的值。此方法类似于setObject(String parameterName, Object x, SQLType targetSqlType, int scaleOrLength)
,只是它假定比例为零。默认实现将抛出
SQLFeatureNotSupportedException
- 参数:
-
parameterName
- 参数的名称 -
x
- 包含输入参数值的对象 -
targetSqlType
- 要发送到数据库的SQL类型 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType - 自版本:
- 1.8
- 参见:
-
registerOutParameter
将序号位置为parameterIndex
的OUT参数注册为JDBC类型sqlType
。必须在执行存储过程之前注册所有OUT参数。为OUT参数指定的JDBC类型决定了必须在
get
方法中使用的Java类型来读取该参数的值。如果预期返回给此输出参数的JDBC类型特定于此特定数据库,则
sqlType
可能是JDBCType.OTHER
或JDBC驱动程序支持的SQLType
。方法getObject(int)
检索值。默认实现将抛出
SQLFeatureNotSupportedException
- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
sqlType
- 由SQLType
定义的JDBC类型代码,用于注册OUT参数。如果参数是JDBC类型JDBCType.NUMERIC
或JDBCType.DECIMAL
,应使用接受比例值的registerOutParameter
版本。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType - 自版本:
- 1.8
- 参见:
-
registerOutParameter
default void registerOutParameter(int parameterIndex, SQLType sqlType, int scale) throws SQLException 将序号位置为parameterIndex
的参数注册为JDBC类型sqlType
。必须在执行存储过程之前注册所有OUT参数。为OUT参数指定的JDBC类型决定了必须在
get
方法中使用的Java类型来读取该参数的值。当参数是JDBC类型
JDBCType.NUMERIC
或JDBCType.DECIMAL
时,应使用此版本的registerOutParameter
。默认实现将抛出
SQLFeatureNotSupportedException
- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,依此类推 -
sqlType
- 由SQLType
定义的JDBC类型代码,用于注册OUT参数 -
scale
- 小数点右侧的期望数字位数。必须大于或等于零。 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType - 自版本:
- 1.8
- 参见:
-
registerOutParameter
default void registerOutParameter(int parameterIndex, SQLType sqlType, String typeName) throws SQLException 注册指定的输出参数。此方法的版本应用于用户定义或REF
输出参数。用户定义类型的示例包括:STRUCT
、DISTINCT
、JAVA_OBJECT
和命名数组类型。必须在执行存储过程之前注册所有OUT参数。
对于用户定义参数,还应提供参数的完全限定SQL类型名称,而
REF
参数要求给出所引用类型的完全限定类型名称。不需要类型代码和类型名称信息的JDBC驱动程序可能会忽略它。但是,为了可移植性,应用程序应始终为用户定义和REF
参数提供这些值。尽管此方法旨在用户定义和REF
参数,但可用于注册任何JDBC类型的参数。如果参数没有用户定义或REF
类型,则typeName参数将被忽略。注意: 在读取out参数的值时,必须使用其Java类型对应的getter方法。
默认实现将抛出
SQLFeatureNotSupportedException
- 参数:
-
parameterIndex
- 第一个参数为1,第二个为2,... -
sqlType
- 由SQLType
定义的JDBC类型代码,用于注册OUT参数 -
typeName
- SQL结构化类型的完全限定名称 - 抛出:
-
SQLException
- 如果parameterIndex无效;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType - 自版本:
- 1.8
- 参见:
-
registerOutParameter
将名为parameterName
的OUT参数注册为JDBC类型sqlType
。必须在执行存储过程之前注册所有OUT参数。为OUT参数指定的JDBC类型决定了必须在
get
方法中使用的Java类型来读取该参数的值。如果预期返回给此输出参数的JDBC类型特定于此特定数据库,则
sqlType
应为JDBCType.OTHER
或JDBC驱动程序支持的SQLType
。方法getObject(int)
检索值。默认实现将抛出
SQLFeatureNotSupportedException
- 参数:
-
parameterName
- 参数的名称 -
sqlType
- 由SQLType
定义的JDBC类型代码,用于注册OUT参数。如果参数是JDBC类型JDBCType.NUMERIC
或JDBCType.DECIMAL
,应使用接受比例值的registerOutParameter
版本。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType或如果JDBC驱动程序不支持此方法 - 自版本:
- 1.8
- 参见:
-
registerOutParameter
default void registerOutParameter(String parameterName, SQLType sqlType, int scale) throws SQLException 注册名为parameterName
的参数为JDBC类型sqlType
。所有OUT参数在执行存储过程之前必须先注册。为OUT参数指定的JDBC类型
sqlType
确定了在get
方法中必须使用的Java类型来读取该参数的值。当参数为JDBC类型
JDBCType.NUMERIC
或JDBCType.DECIMAL
时,应使用此版本的registerOutParameter
。默认实现将抛出
SQLFeatureNotSupportedException
- 参数:
-
parameterName
- 参数的名称 -
sqlType
- 由SQLType
定义的JDBC类型代码,用于注册OUT参数。 -
scale
- 小数点右侧所需的位数。必须大于或等于零。 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType或JDBC驱动程序不支持此方法 - 自版本:
- 1.8
- 参见:
-
registerOutParameter
default void registerOutParameter(String parameterName, SQLType sqlType, String typeName) throws SQLException 注册指定的输出参数。应使用此方法的版本registerOutParameter
用于用户命名或REF输出参数。用户命名类型的示例包括:STRUCT、DISTINCT、JAVA_OBJECT和命名数组类型。所有OUT参数在执行存储过程之前必须先注册。
对于用户命名参数,还应提供参数的完全限定SQL类型名称,而REF参数要求提供所引用类型的完全限定类型名称。不需要类型代码和类型名称信息的JDBC驱动程序可以忽略它。但是,为了可移植性,应用程序应始终为用户命名和REF参数提供这些值。尽管此方法旨在用于用户命名和REF参数,但也可用于注册任何JDBC类型的参数。如果参数没有用户命名或REF类型,则忽略typeName参数。注意: 在读取out参数的值时,必须使用与参数注册的SQL类型相对应的
getXXX
方法。默认实现将抛出
SQLFeatureNotSupportedException
- 参数:
-
parameterName
- 参数的名称 -
sqlType
- 由SQLType
定义的JDBC类型代码,用于注册OUT参数。 -
typeName
- SQL结构化类型的完全限定名称 - 抛出:
-
SQLException
- 如果parameterName不对应于命名参数;如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法 -
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType或JDBC驱动程序不支持此方法 - 自版本:
- 1.8
- 参见:
-
getBigDecimal(int parameterIndex)
或getBigDecimal(String parameterName)