public interface CallableStatement extends PreparedStatement
{?= call <procedure-name>[(<arg1>,<arg2>, ...)]}
{call <procedure-name>[(<arg1>,<arg2>, ...)]}
IN参数值使用从PreparedStatement
继承的set
方法设置。 所有OUT参数的类型必须在执行存储过程之前进行注册; 它们的值通过这里提供的get
方法在执行get
。
A CallableStatement
可以返回一个ResultSet
对象或多个ResultSet
对象。 多个ResultSet
对象使用从Statement
ResultSet
操作来处理。
为获得最大的便携性,应在处理输出参数值之前处理一个电话ResultSet
对象和更新计数。
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 |
---|---|
Array |
getArray(int parameterIndex)
以Java编程语言中的 Array 对象的形式获取指定的JDBC ARRAY 参数的值。
|
Array |
getArray(String parameterName)
以Java编程语言中的 Array 对象的ARRAY 获取JDBC ARRAY 参数的值。
|
BigDecimal |
getBigDecimal(int parameterIndex)
将指定的JDBC
NUMERIC 参数的值检索为
java.math.BigDecimal 对象,其值包含小数点右侧的数字。
|
BigDecimal |
getBigDecimal(int parameterIndex, int scale)
已弃用
使用
getBigDecimal(int parameterIndex) 或getBigDecimal(String parameterName)
|
BigDecimal |
getBigDecimal(String parameterName)
将JDBC
NUMERIC 参数的值检索为
java.math.BigDecimal 对象,该值与包含的小数点右边的位数一样多。
|
Blob |
getBlob(int parameterIndex)
以Java编程语言中的 Blob 对象的形式获取指定的JDBC BLOB 参数的值。
|
Blob |
getBlob(String parameterName)
以Java编程语言的 Blob 对象的BLOB 获取JDBC BLOB 参数的值。
|
boolean |
getBoolean(int parameterIndex)
获取指定的JDBC的值
BIT 或
BOOLEAN 作为参数
boolean Java编程语言。
|
boolean |
getBoolean(String parameterName)
检索JDBC的值
BIT 或
BOOLEAN 作为参数
boolean Java编程语言。
|
byte |
getByte(int parameterIndex)
获取指定的JDBC的价值
TINYINT 参数为
byte 的Java编程语言。
|
byte |
getByte(String parameterName)
以Java编程语言byte的形式
byte JDBC
TINYINT 参数的值。
|
byte[] |
getBytes(int parameterIndex)
将指定的JDBC
BINARY 或
VARBINARY 参数的值作为Java编程语言中的
byte 值的数组检索。
|
byte[] |
getBytes(String parameterName)
将Java
BINARY 或
VARBINARY 参数的值检索为Java编程语言中的
byte 值。
|
Reader |
getCharacterStream(int parameterIndex)
以Java编程语言中的
java.io.Reader 对象获取指定参数的值。
|
Reader |
getCharacterStream(String parameterName)
以Java编程语言中的
java.io.Reader 对象获取指定参数的值。
|
Clob |
getClob(int parameterIndex)
将指定的JDBC
CLOB 参数的值作为Java编程语言中的
java.sql.Clob 对象检索。
|
Clob |
getClob(String parameterName)
以Java编程语言
java.sql.Clob 对象的
CLOB 获取JDBC
CLOB 参数的值。
|
Date |
getDate(int parameterIndex)
将指定的JDBC
DATE 参数的值检索为
java.sql.Date 对象。
|
Date |
getDate(int parameterIndex, Calendar cal)
将指定的JDBC
DATE 参数的值检索为
java.sql.Date 对象,使用给定的
Calendar 对象构造日期。
|
Date |
getDate(String parameterName)
以
java.sql.Date 对象的
DATE 获取JDBC
DATE 参数的值。
|
Date |
getDate(String parameterName, Calendar cal)
使用给定的
Calendar 对象来构造日期,将JDBC
DATE 参数的值检索为
java.sql.Date 对象。
|
double |
getDouble(int parameterIndex)
获取指定的JDBC的价值
DOUBLE 参数为
double 的Java编程语言。
|
double |
getDouble(String parameterName)
检索JDBC的价值
DOUBLE 参数为
double 的Java编程语言。
|
float |
getFloat(int parameterIndex)
获取指定的JDBC的价值
FLOAT 参数为
float 的Java编程语言。
|
float |
getFloat(String parameterName)
检索JDBC的价值
FLOAT 参数为
float 的Java编程语言。
|
int |
getInt(int parameterIndex)
获取指定的JDBC的价值
INTEGER 作为参数
int Java编程语言。
|
int |
getInt(String parameterName)
检索JDBC的价值
INTEGER 作为参数
int Java编程语言。
|
long |
getLong(int parameterIndex)
获取指定的JDBC的价值
BIGINT 参数为
long 的Java编程语言。
|
long |
getLong(String parameterName)
检索JDBC的价值
BIGINT 参数为
long 的Java编程语言。
|
Reader |
getNCharacterStream(int parameterIndex)
以Java编程语言获取指定参数的值作为
java.io.Reader 对象。
|
Reader |
getNCharacterStream(String parameterName)
以Java编程语言的形式获取指定参数的值作为
java.io.Reader 对象。
|
NClob |
getNClob(int parameterIndex)
将指定的JDBC
NCLOB 参数的值作为Java编程语言中的
java.sql.NClob 对象检索。
|
NClob |
getNClob(String parameterName)
检索JDBC的价值
NCLOB 参数为
java.sql.NClob 的Java编程语言对象。
|
String |
getNString(int parameterIndex)
检索指定的值
NCHAR ,
NVARCHAR 或
LONGNVARCHAR 作为参数
String Java编程语言。
|
String |
getNString(String parameterName)
检索指定的值
NCHAR ,
NVARCHAR 或
LONGNVARCHAR 作为参数
String Java编程语言。
|
Object |
getObject(int parameterIndex)
检索作为指定参数的值
Object Java编程语言。
|
<T> T |
getObject(int parameterIndex, 类<T> type)
返回一个对象,表示OUT参数的值
parameterIndex 并将从SQL类型的参数转换为所请求的Java数据类型,如果支持的转换。
|
Object |
getObject(int parameterIndex, Map<String,类<?>> map)
返回一个表示OUT参数的值的对象,
parameterIndex 和使用
map 用于该参数值的自定义映射。
|
Object |
getObject(String parameterName)
检索作为一个参数的值
Object Java编程语言。
|
<T> T |
getObject(String parameterName, 类<T> type)
返回一个对象,表示OUT参数的值
parameterName 并将从SQL类型的参数转换为所请求的Java数据类型,如果支持的转换。
|
Object |
getObject(String parameterName, Map<String,类<?>> map)
返回一个表示OUT参数的值的对象,
parameterName 和使用
map 用于该参数值的自定义映射。
|
Ref |
getRef(int parameterIndex)
将指定的JDBC REF(<structured-type>) 参数的值作为Java编程语言中的Ref 对象检索。
|
Ref |
getRef(String parameterName)
检索JDBC的价值 REF(<structured-type>) 参数为Ref 的Java编程语言对象。
|
RowId |
getRowId(int parameterIndex)
将指定的JDBC
ROWID 参数的值检索为
java.sql.RowId 对象。
|
RowId |
getRowId(String parameterName)
将指定的JDBC
ROWID 参数的值检索为
java.sql.RowId 对象。
|
short |
getShort(int parameterIndex)
获取指定的JDBC的价值
SMALLINT 参数为
short 的Java编程语言。
|
short |
getShort(String parameterName)
检索JDBC的价值
SMALLINT 参数为
short 的Java编程语言。
|
SQLXML |
getSQLXML(int parameterIndex)
以Java编程语言中的
java.sql.SQLXML 对象获取
SQL XML SQL XML参数的值。
|
SQLXML |
getSQLXML(String parameterName)
以Java编程语言获取
SQL XML SQL XML参数的值作为
java.sql.SQLXML 对象。
|
String |
getString(int parameterIndex)
获取指定的JDBC值
CHAR ,
VARCHAR ,或
LONGVARCHAR 参数为
String 的Java编程语言。
|
String |
getString(String parameterName)
检索JDBC的值
CHAR ,
VARCHAR ,或
LONGVARCHAR 作为参数
String Java编程语言。
|
Time |
getTime(int parameterIndex)
将指定的JDBC
TIME 参数的值检索为
java.sql.Time 对象。
|
Time |
getTime(int parameterIndex, Calendar cal)
将指定的JDBC
TIME 参数的值检索为
java.sql.Time 对象,使用给定的
Calendar 对象构建时间。
|
Time |
getTime(String parameterName)
以
java.sql.Time 对象的
TIME 获取JDBC
TIME 参数的值。
|
Time |
getTime(String parameterName, Calendar cal)
以
java.sql.Time 对象的
TIME 获取JDBC
TIME 参数的值,使用给定的
Calendar 对象构建时间。
|
Timestamp |
getTimestamp(int parameterIndex)
将指定的JDBC
TIMESTAMP 参数的值检索为
java.sql.Timestamp 对象。
|
Timestamp |
getTimestamp(int parameterIndex, Calendar cal)
将指定的JDBC
TIMESTAMP 参数的值检索为
java.sql.Timestamp 对象,使用给定的
Calendar 对象构造
Timestamp 对象。
|
Timestamp |
getTimestamp(String parameterName)
以
java.sql.Timestamp 对象的
TIMESTAMP 检索JDBC
TIMESTAMP 参数的值。
|
Timestamp |
getTimestamp(String parameterName, Calendar cal)
使用给定的
Calendar 对象
java.sql.Timestamp 对象,将JDBC
TIMESTAMP 参数的值检索为
Timestamp 对象。
|
URL |
getURL(int parameterIndex)
将指定的JDBC
DATALINK 参数的值检索为
java.net.URL 对象。
|
URL |
getURL(String parameterName)
以
java.net.URL 对象的
DATALINK 获取JDBC
DATALINK 参数的值。
|
void |
registerOutParameter(int parameterIndex, int sqlType)
将序号parameterIndex中的OUT参数
parameterIndex 到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参数
parameterIndex 到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参数
parameterName 到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参数
parameterName 到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, Blob x)
将指定的参数设置为给定的
java.sql.Blob 对象。
|
void |
setBlob(String parameterName, InputStream inputStream)
将指定的参数设置为
InputStream 对象。
|
void |
setBlob(String parameterName, InputStream inputStream, long length)
将指定的参数设置为
InputStream 对象。
|
void |
setBoolean(String parameterName, boolean x)
将指定的参数设置为给定的Java
boolean 值。
|
void |
setByte(String parameterName, byte x)
将指定的参数设置为给定的Java
byte 值。
|
void |
setBytes(String parameterName, byte[] x)
将指定的参数设置为给定的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 |
setClob(String parameterName, Clob x)
将指定的参数设置为给定的
java.sql.Clob 对象。
|
void |
setClob(String parameterName, Reader reader)
将指定的参数设置为
Reader 对象。
|
void |
setClob(String parameterName, Reader reader, long length)
将指定的参数设置为
Reader 对象。
|
void |
setDate(String parameterName, Date x)
使用运行应用程序的虚拟机的默认时区将指定的
java.sql.Date 设置为给定的
java.sql.Date 值。
|
void |
setDate(String parameterName, Date x, Calendar cal)
使用给定的
Calendar 对象将指定的
Calendar 设置为给定的
java.sql.Date 值。
|
void |
setDouble(String parameterName, double x)
将指定的参数设置为给定的Java
double 值。
|
void |
setFloat(String parameterName, float x)
将指定的参数设置为给定的Java
float 值。
|
void |
setInt(String parameterName, int x)
将指定的参数设置为给定的Java
int 值。
|
void |
setLong(String parameterName, long x)
将指定的参数设置为给定的Java
long 值。
|
void |
setNCharacterStream(String parameterName, Reader value)
将指定的参数设置为
Reader 对象。
|
void |
setNCharacterStream(String parameterName, Reader value, long length)
将指定的参数设置为
Reader 对象。
|
void |
setNClob(String parameterName, NClob value)
将指定的参数设置为
java.sql.NClob 对象。
|
void |
setNClob(String parameterName, Reader reader)
将指定的参数设置为
Reader 对象。
|
void |
setNClob(String parameterName, Reader reader, long length)
将指定的参数设置为
Reader 对象。
|
void |
setNString(String parameterName, String value)
将指定的参数设置为给定的
String 对象。
|
void |
setNull(String parameterName, int sqlType)
将指定的参数设置为SQL
NULL 。
|
void |
setNull(String parameterName, int sqlType, String typeName)
将指定的参数设置为SQL
NULL 。
|
void |
setObject(String parameterName, Object x)
使用给定对象设置指定参数的值。
|
void |
setObject(String parameterName, Object x, int targetSqlType)
使用给定对象设置指定参数的值。
|
void |
setObject(String parameterName, Object x, int targetSqlType, int scale)
使用给定对象设置指定参数的值。
|
default void |
setObject(String parameterName, Object x, SQLType targetSqlType)
使用给定对象设置指定参数的值。
|
default void |
setObject(String parameterName, Object x, SQLType targetSqlType, int scaleOrLength)
使用给定对象设置指定参数的值。
|
void |
setRowId(String parameterName, RowId x)
将指定的参数设置为给定的
java.sql.RowId 对象。
|
void |
setShort(String parameterName, short x)
将指定的参数设置为给定的Java
short 值。
|
void |
setSQLXML(String parameterName, SQLXML xmlObject)
将指定的参数设置为给定的
java.sql.SQLXML 对象。
|
void |
setString(String parameterName, String x)
将指定的参数设置为给定的Java
String 值。
|
void |
setTime(String parameterName, Time x)
将指定的参数设置为给定的
java.sql.Time 值。
|
void |
setTime(String parameterName, Time x, Calendar cal)
使用给定的
Calendar 对象将指定的
Calendar 设置为给定的
java.sql.Time 值。
|
void |
setTimestamp(String parameterName, Timestamp x)
将指定的参数设置为给定的
java.sql.Timestamp 值。
|
void |
setTimestamp(String parameterName, Timestamp x, Calendar cal)
使用给定的
Calendar 对象将指定的
Calendar 设置为给定的
java.sql.Timestamp 值。
|
void |
setURL(String parameterName, URL val)
将指定的参数设置为给定的
java.net.URL 对象。
|
boolean |
wasNull()
检索读取的最后一个OUT参数的值是否为
NULL 。
|
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
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
void registerOutParameter(int parameterIndex, int sqlType) throws SQLException
parameterIndex
到JDBC类型sqlType
。
所有OUT参数必须在执行存储过程之前进行注册。
sqlType
为OUT参数指定的JDBC类型决定了在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驱动程序不支持此数据类型
Types
void registerOutParameter(int parameterIndex, int sqlType, int scale) throws SQLException
parameterIndex
为JDBC类型sqlType
。
所有OUT参数必须在执行存储过程之前进行注册。
用于OUT参数的由sqlType
的JDBC类型确定了get
方法中必须使用的Java类型以读取该参数的值。
这个版本registerOutParameter
当参数是JDBC类型应使用NUMERIC
或DECIMAL
。
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驱动程序不支持此数据类型
Types
boolean wasNull() throws SQLException
NULL
。
请注意,此方法只能在调用getter方法后调用;
否则,在确定是否为null
时没有使用价值。
true
如果最后一个参数读取为SQL NULL
;
false
否则
SQLException
- 如果发生数据库访问错误或此方法在关闭的
CallableStatement
String getString(int parameterIndex) throws SQLException
CHAR
, VARCHAR
,或LONGVARCHAR
参数为String
的Java编程语言。
对于固定长度类型的JDBC CHAR
,返回的String
对象与SQL CHAR
值在数据库中具有完全相同的值,包括数据库添加的任何填充。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setString(java.lang.String, java.lang.String)
boolean getBoolean(int parameterIndex) throws SQLException
BIT
或
BOOLEAN
作为参数
boolean
Java编程语言。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为false
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setBoolean(java.lang.String, boolean)
byte getByte(int parameterIndex) throws SQLException
TINYINT
参数为
byte
的Java编程语言。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为0
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setByte(java.lang.String, byte)
short getShort(int parameterIndex) throws SQLException
SMALLINT
参数为
short
的Java编程语言。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为0
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setShort(java.lang.String, short)
int getInt(int parameterIndex) throws SQLException
INTEGER
作为参数
int
Java编程语言。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为0
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setInt(java.lang.String, int)
long getLong(int parameterIndex) throws SQLException
BIGINT
参数为
long
的Java编程语言。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为0
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setLong(java.lang.String, long)
float getFloat(int parameterIndex) throws SQLException
FLOAT
参数为
float
的Java编程语言。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为0
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setFloat(java.lang.String, float)
double getDouble(int parameterIndex) throws SQLException
DOUBLE
参数为
double
的Java编程语言。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为0
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setDouble(java.lang.String, double)
@Deprecated BigDecimal getBigDecimal(int parameterIndex, int scale) throws SQLException
getBigDecimal(int parameterIndex)
或getBigDecimal(String parameterName)
NUMERIC
参数的值检索为
java.math.BigDecimal
对象,其小数点右侧的
比例数字。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
scale
- 小数点右侧的位数
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setBigDecimal(java.lang.String, java.math.BigDecimal)
byte[] getBytes(int parameterIndex) throws SQLException
BINARY
或
VARBINARY
参数的值作为Java编程语言中的
byte
值的数组检索。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setBytes(java.lang.String, byte[])
Date getDate(int parameterIndex) throws SQLException
DATE
参数的值检索为
java.sql.Date
对象。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setDate(java.lang.String, java.sql.Date)
Time getTime(int parameterIndex) throws SQLException
TIME
参数的值检索为
java.sql.Time
对象。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setTime(java.lang.String, java.sql.Time)
Timestamp getTimestamp(int parameterIndex) throws SQLException
TIMESTAMP
参数的值检索为
java.sql.Timestamp
对象。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setTimestamp(java.lang.String, java.sql.Timestamp)
Object getObject(int parameterIndex) throws SQLException
Object
Java编程语言。
如果该值为SQL NULL
,则驱动程序返回Java null
。
此方法返回一个Java对象,该对象的类型与使用方法registerOutParameter
为该参数注册的JDBC类型registerOutParameter
。 通过将目标JDBC类型注册为java.sql.Types.OTHER
,此方法可用于读取数据库特定的抽象数据类型。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
java.lang.Object
保存OUT参数值
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
Types
, setObject(java.lang.String, java.lang.Object, int, int)
BigDecimal getBigDecimal(int parameterIndex) throws SQLException
NUMERIC
参数的值检索为
java.math.BigDecimal
对象,其值包含小数点右侧的数字。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setBigDecimal(java.lang.String, java.math.BigDecimal)
Object getObject(int parameterIndex, Map<String,类<?>> map) throws SQLException
parameterIndex
和使用map
用于该参数值的自定义映射。
此方法返回一个Java对象,该对象的类型与使用方法registerOutParameter
为此参数注册的JDBC类型registerOutParameter
。 通过将目标JDBC类型注册为java.sql.Types.OTHER
,此方法可用于读取数据库特定的抽象数据类型。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
map
- 从SQL类型名称到Java类的映射
java.lang.Object
保存OUT参数值
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setObject(java.lang.String, java.lang.Object, int, int)
Ref getRef(int parameterIndex) throws SQLException
REF(<structured-type>)
参数的值作为Java编程语言中的Ref
对象检索。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
Ref
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Blob getBlob(int parameterIndex) throws SQLException
BLOB
参数的值作为Blob
对象。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
Blob
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Clob getClob(int parameterIndex) throws SQLException
CLOB
参数的值作为
java.sql.Clob
对象。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
Clob
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Array getArray(int parameterIndex) throws SQLException
Array
对象获取指定的JDBC ARRAY
参数的值。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
Array
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Date getDate(int parameterIndex, Calendar cal) throws SQLException
DATE
参数的值检索为java.sql.Date
对象,使用给定的Calendar
对象构造日期。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区和区域设置的日期。
如果未Calendar
对象,则驱动程序将使用默认的时区和区域设置。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
cal
- 驱动程序将用于构建日期的
Calendar
对象
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setDate(java.lang.String, java.sql.Date)
Time getTime(int parameterIndex, Calendar cal) throws SQLException
TIME
参数的值检索为java.sql.Time
对象,使用给定的Calendar
对象构建时间。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区和区域设置的时间。
如果未Calendar
对象,则驱动程序将使用默认时区和区域设置。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
cal
- 驱动程序将用于构建时间的
Calendar
对象
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setTime(java.lang.String, java.sql.Time)
Timestamp getTimestamp(int parameterIndex, Calendar cal) throws SQLException
TIMESTAMP
参数的值检索为java.sql.Timestamp
对象,使用给定的Calendar
对象构造Timestamp
对象。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区和区域设置的时间戳。
如果未Calendar
对象,则驱动程序将使用默认的时区和区域设置。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
cal
-在
Calendar
对象的驱动程序将用来构造时间戳
NULL
,则结果为null
。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
setTimestamp(java.lang.String, java.sql.Timestamp)
void registerOutParameter(int parameterIndex, int sqlType, String typeName) throws SQLException
registerOutParameter
这个版本应该用于用户定义的或REF
输出参数。
的用户定义类型的实例包括: STRUCT
, DISTINCT
, JAVA_OBJECT
,和指定数组类型。
所有OUT参数必须在执行存储过程之前进行注册。
对于用户定义的参数,也应该给出参数的完全限定的SQL类型名称,而REF
参数要求给出引用类型的全限定类型名称。 不需要类型代码和类型名称信息的JDBC驱动程序可能会忽略它。 然而,为了便于携带,应用程序应始终为用户定义和REF
参数提供这些值。 虽然它是用于用户定义的和REF
参数,但是该方法可以用于注册任何JDBC类型的参数。 如果该参数不具有用户定义或REF
类型,则typeName参数将被忽略。
注意:读取out参数的值时,必须使用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驱动程序不支持此数据类型
Types
void registerOutParameter(String parameterName, int sqlType) throws SQLException
parameterName
到JDBC类型sqlType
。
所有OUT参数必须在执行存储过程之前进行注册。
sqlType
为OUT参数指定的JDBC类型决定了get
方法中必须使用的Java类型,以读取该参数的值。
如果希望返回到此输出参数的JDBC类型是特定于该特定数据库的, sqlType
应为java.sql.Types.OTHER
。 方法getObject(int)
检索该值。
parameterName
- 参数的名称
sqlType
- 由java.sql.Types
定义的JDBC类型代码。
如果参数是JDBC类型NUMERIC
或DECIMAL
, registerOutParameter
使用接受比例值的registerOutParameter
版本。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
-如果
sqlType
是
ARRAY
,
BLOB
,
CLOB
,
DATALINK
,
JAVA_OBJECT
,
NCHAR
,
NCLOB
,
NVARCHAR
,
LONGNVARCHAR
,
REF
,
ROWID
,
SQLXML
或
STRUCT
数据类型和JDBC驱动程序不支持此数据类型,或者JDBC驱动程序不支持这种方法
Types
void registerOutParameter(String parameterName, int sqlType, int scale) throws SQLException
parameterName
JDBC类型的sqlType
。
所有OUT参数必须在执行存储过程之前进行注册。
通过指定JDBC类型sqlType
为OUT参数确定必须在所使用的Java类型get
方法来读取该参数的值。
这个版本registerOutParameter
当参数是JDBC类型应使用NUMERIC
或DECIMAL
。
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驱动程序不支持这种方法
Types
void registerOutParameter(String parameterName, int sqlType, String typeName) throws SQLException
registerOutParameter
应用于用户名或REF输出参数。
用户命名类型的示例包括:STRUCT,DISTINCT,JAVA_OBJECT和命名的数组类型。
所有OUT参数必须在执行存储过程之前进行注册。
对于用户命名的参数,还应该给出参数的完全限定的SQL类型名称,而REF参数要求给定引用类型的完全限定类型名称。 不需要类型代码和类型名称信息的JDBC驱动程序可能会忽略它。 然而,为了便于携带,应用程序应始终为用户命名和REF参数提供这些值。 尽管它是用于用户命名的和REF参数的,但是该方法可以用于注册任何JDBC类型的参数。 如果该参数不具有用户名或REF类型,则将忽略typeName参数。
注意:读取out参数的值时,必须使用Java类型XXX对应于参数的注册SQL类型的getXXX
方法。
parameterName
- 参数的名称
sqlType
- 一个值来自Types
typeName
- SQL结构化类型的全限定名称
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
-如果
sqlType
是
ARRAY
,
BLOB
,
CLOB
,
DATALINK
,
JAVA_OBJECT
,
NCHAR
,
NCLOB
,
NVARCHAR
,
LONGNVARCHAR
,
REF
,
ROWID
,
SQLXML
或
STRUCT
数据类型和JDBC驱动程序不支持此数据类型,或者JDBC驱动程序不支持这种方法
Types
URL getURL(int parameterIndex) throws SQLException
DATALINK
参数的值检索为
java.net.URL
对象。
parameterIndex
- 第一个参数是1,第二个是2,...
java.net.URL
对象,表示用作指定参数的JDBC
DATALINK
值
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误,此方法在封闭的CallableStatement
上调用,或者如果返回的URL不是Java平台上的有效URL
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setURL(java.lang.String, java.net.URL)
void setURL(String parameterName, URL val) throws SQLException
java.net.URL
对象。
当驱动程序将其发送到数据库时,将其转换为SQL DATALINK
值。
parameterName
- 参数的名称
val
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误;
该方法在封闭的CallableStatement
上调用,或者网址格式错误
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getURL(int)
void setNull(String parameterName, int sqlType) throws SQLException
NULL
。
注意:您必须指定参数的SQL类型。
parameterName
- 参数的名称
sqlType
- 在
java.sql.Types
定义的SQL类型代码
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBoolean(String parameterName, boolean x) throws SQLException
boolean
值。
当驱动程序将其发送到数据库时,将其转换为SQL BIT
或BOOLEAN
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于命名参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getBoolean(int)
void setByte(String parameterName, byte x) throws SQLException
byte
值。
当驱动程序将其发送到数据库时,将其转换为SQL TINYINT
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getByte(int)
void setShort(String parameterName, short x) throws SQLException
short
值。
当驱动程序将其发送到数据库时,将其转换为SQL SMALLINT
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getShort(int)
void setInt(String parameterName, int x) throws SQLException
int
值。
当驱动程序将其发送到数据库时,将其转换为SQL INTEGER
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getInt(int)
void setLong(String parameterName, long x) throws SQLException
long
值。
当驱动程序将其发送到数据库时,将其转换为SQL BIGINT
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于命名参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getLong(int)
void setFloat(String parameterName, float x) throws SQLException
float
值。
当驱动程序将其发送到数据库时,将其转换为SQL FLOAT
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getFloat(int)
void setDouble(String parameterName, double x) throws SQLException
double
值。
当驱动程序将其发送到数据库时,将其转换为SQL DOUBLE
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getDouble(int)
void setBigDecimal(String parameterName, BigDecimal x) throws SQLException
java.math.BigDecimal
值。
当驱动程序将其发送到数据库时,将其转换为SQL NUMERIC
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getBigDecimal(int, int)
void setString(String parameterName, String x) throws SQLException
String
值。
当驱动程序将其发送到数据库时,将其转换为SQL VARCHAR
或LONGVARCHAR
值(取决于参数相对于VARCHAR
值的驱动程序限制的大小)。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getString(int)
void setBytes(String parameterName, byte[] x) throws SQLException
VARBINARY
或LONGVARBINARY
(取决于参数相对于VARBINARY
驱动程序的限制的大小)。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getBytes(int)
void setDate(String parameterName, Date x) throws SQLException
java.sql.Date
设置为给定的java.sql.Date
值。
当驱动程序将其发送到数据库时,将其转换为SQL DATE
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getDate(int)
void setTime(String parameterName, Time x) throws SQLException
java.sql.Time
值。
当驱动程序将其发送到数据库时,将其转换为SQL TIME
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getTime(int)
void setTimestamp(String parameterName, Timestamp x) throws SQLException
java.sql.Timestamp
值。
当驱动程序将其发送到数据库时将其转换为SQL TIMESTAMP
值。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getTimestamp(int)
void setAsciiStream(String parameterName, InputStream x, int length) throws SQLException
LONGVARCHAR
参数时,通过java.io.InputStream
发送它可能更java.io.InputStream
。
将根据需要从流中读取数据,直到达到文件结尾。
JDBC驱动程序将从ASCII到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterName
- 参数的名称
x
- 包含ASCII参数值的Java输入流
length
- 流中的字节数
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBinaryStream(String parameterName, InputStream x, int length) throws SQLException
LONGVARBINARY
参数时,通过java.io.InputStream
对象发送它可能更实用。
数据将根据需要从流中读取,直到达到文件结尾。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterName
- 参数的名称
x
- 包含二进制参数值的java输入流
length
- 流中的字节数
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setObject(String parameterName, Object x, int targetSqlType, int scale) throws SQLException
在发送给数据库之前,给定的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
- 对于java.sql.Types.DECIMAL或java.sql.Types.NUMERIC类型,这是小数点后的位数。
对于所有其他类型,此值将被忽略。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType
Types
, getObject(int)
void setObject(String parameterName, Object x, int targetSqlType) throws SQLException
setObject(String parameterName, Object x, int targetSqlType, int scaleOrLength)
,除了它假定为零。
parameterName
- 参数的名称
x
- 包含输入参数值的对象
targetSqlType
- 要发送到数据库的SQL类型(在java.sql.Types中定义)
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType
getObject(int)
void setObject(String parameterName, Object x) throws SQLException
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不对应于named参数;
如果发生数据库访问错误,则该方法在关闭的CallableStatement
上调用,或者如果给定的Object
参数不明确
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getObject(int)
void setCharacterStream(String parameterName, Reader reader, int length) throws SQLException
Reader
对象,这是给定的长度的字符数。
当非常大的UNICODE值输入到LONGVARCHAR
参数时,通过java.io.Reader
对象发送它可能更实用。
数据将根据需要从流中读取,直到达到文件结尾。
JDBC驱动程序将从UNICODE到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterName
- 参数的名称
reader
-所述
java.io.Reader
包含用作指定参数的UNICODE数据对象
length
- 流中的字符数
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setDate(String parameterName, Date x, Calendar cal) throws SQLException
Calendar
对象将指定的Calendar
设置为给定的java.sql.Date
值。
驱动程序使用Calendar
对象来构造一个SQL DATE
值,然后驱动程序将其发送到数据库。
使用aa Calendar
对象,驱动程序可以计算考虑到自定义时区的日期。
如果没有Calendar
对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
parameterName
- 参数的名称
x
- 参数值
cal
- 驱动程序将用于构建日期的
Calendar
对象
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getDate(int)
void setTime(String parameterName, Time x, Calendar cal) throws SQLException
Calendar
对象将指定的Calendar
设置为给定的java.sql.Time
值。
驱动程序使用Calendar
对象来构造一个SQL TIME
值,然后驱动程序将其发送到数据库。
使用aa Calendar
对象,驱动程序可以计算考虑到自定义时区的时间。
如果没有Calendar
对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
parameterName
- 参数的名称
x
- 参数值
cal
- 驱动程序将用于构建时间的
Calendar
对象
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getTime(int)
void setTimestamp(String parameterName, Timestamp x, Calendar cal) throws SQLException
Calendar
对象将指定的Calendar
设置为给定的java.sql.Timestamp
值。
驱动程序使用Calendar
对象来构造一个SQL TIMESTAMP
值,然后驱动程序将其发送到数据库。
使用aa Calendar
对象,驱动程序可以计算考虑到自定义时区的时间戳。
如果没有Calendar
对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
parameterName
- 参数的名称
x
- 参数值
cal
-在
Calendar
对象的驱动程序将用来构造时间戳
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
getTimestamp(int)
void setNull(String parameterName, int sqlType, String typeName) throws SQLException
NULL
。
此版本的方法setNull
应用于用户定义的类型和REF类型参数。
用户定义类型的示例包括:STRUCT,DISTINCT,JAVA_OBJECT和命名的数组类型。
注意:为了便于携带,当指定NULL用户定义或REF参数时,应用程序必须给出SQL类型代码和完全限定的SQL类型名称。 在用户定义类型的情况下,名称是参数本身的类型名称。 对于REF参数,名称是引用类型的类型名称。
尽管它是用于用户定义的和参数的参数,但是该方法可以用于设置任何JDBC类型的空值参数。 如果参数没有用户定义或REF类型,则给定的typeName将被忽略。
parameterName
- 参数的名称
sqlType
- 一个来自
java.sql.Types
typeName
- SQL用户定义类型的全限定名称;
如果参数不是用户定义的类型或SQL REF
值,则忽略该值
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
String getString(String parameterName) throws SQLException
CHAR
, VARCHAR
,或LONGVARCHAR
作为参数String
Java编程语言。
对于固定长度类型的JDBC CHAR
,返回的String
对象与SQL CHAR
值在数据库中具有完全相同的值,包括数据库添加的任何填充。
parameterName
- 参数的名称
NULL
,则结果为null
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setString(java.lang.String, java.lang.String)
boolean getBoolean(String parameterName) throws SQLException
BIT
或
BOOLEAN
作为参数
boolean
Java编程语言。
parameterName
- 参数的名称
NULL
,则结果为false
。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setBoolean(java.lang.String, boolean)
byte getByte(String parameterName) throws SQLException
TINYINT
参数为
byte
的Java编程语言。
parameterName
- 参数的名称
NULL
,则结果为0
。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setByte(java.lang.String, byte)
short getShort(String parameterName) throws SQLException
SMALLINT
参数为
short
的Java编程语言。
parameterName
- 参数的名称
NULL
,则结果为0
。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setShort(java.lang.String, short)
int getInt(String parameterName) throws SQLException
INTEGER
作为参数
int
Java编程语言。
parameterName
- 参数的名称
NULL
,则结果为0
。
SQLException
- 如果parameterName不对应于命名参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setInt(java.lang.String, int)
long getLong(String parameterName) throws SQLException
BIGINT
参数为
long
的Java编程语言。
parameterName
- 参数的名称
NULL
,则结果为0
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setLong(java.lang.String, long)
float getFloat(String parameterName) throws SQLException
FLOAT
参数为
float
的Java编程语言。
parameterName
- 参数的名称
NULL
,则结果为0
。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setFloat(java.lang.String, float)
double getDouble(String parameterName) throws SQLException
DOUBLE
参数为
double
的Java编程语言。
parameterName
- 参数的名称
NULL
,则结果为0
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setDouble(java.lang.String, double)
byte[] getBytes(String parameterName) throws SQLException
byte
JDBC
BINARY
或
VARBINARY
参数的值。
parameterName
- 参数的名称
NULL
,则结果为null
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setBytes(java.lang.String, byte[])
Date getDate(String parameterName) throws SQLException
java.sql.Date
对象的JDBC
DATE
参数的值。
parameterName
- 参数的名称
NULL
,则结果为null
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setDate(java.lang.String, java.sql.Date)
Time getTime(String parameterName) throws SQLException
java.sql.Time
对象的JDBC
TIME
参数的值。
parameterName
- 参数的名称
NULL
,则结果为null
。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setTime(java.lang.String, java.sql.Time)
Timestamp getTimestamp(String parameterName) throws SQLException
java.sql.Timestamp
对象的
TIMESTAMP
获取JDBC
TIMESTAMP
参数的值。
parameterName
- 参数的名称
NULL
,则结果为null
。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setTimestamp(java.lang.String, java.sql.Timestamp)
Object getObject(String parameterName) throws SQLException
Object
Java编程语言。
如果该值为SQL NULL
,则驱动程序返回Java null
。
此方法返回一个Java对象,其类型对应于使用方法registerOutParameter
为此参数注册的JDBC类型。 通过将目标JDBC类型注册为java.sql.Types.OTHER
,此方法可用于读取数据库特定的抽象数据类型。
parameterName
- 参数的名称
java.lang.Object
保存OUT参数值。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Types
, setObject(java.lang.String, java.lang.Object, int, int)
BigDecimal getBigDecimal(String parameterName) throws SQLException
NUMERIC
参数的值作为
java.math.BigDecimal
对象检索,该对象的值包含小数点右侧的数字。
parameterName
- 参数的名称
NULL
,则结果为null
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setBigDecimal(java.lang.String, java.math.BigDecimal)
Object getObject(String parameterName, Map<String,类<?>> map) throws SQLException
parameterName
和使用map
用于该参数值的自定义映射。
此方法返回一个Java对象,其类型对应于使用方法registerOutParameter
为该参数注册的JDBC类型。 通过将目标JDBC类型注册为java.sql.Types.OTHER
,此方法可用于读取特定于数据库的抽象数据类型。
parameterName
- 参数的名称
map
- 从SQL类型名称到Java类的映射
java.lang.Object
保存OUT参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setObject(java.lang.String, java.lang.Object, int, int)
Ref getRef(String parameterName) throws SQLException
REF(<structured-type>)
参数为Ref
的Java编程语言对象。
parameterName
- 参数的名称
Ref
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Blob getBlob(String parameterName) throws SQLException
Blob
对象的BLOB
获取JDBC BLOB
参数的值。
parameterName
- 参数的名称
Blob
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Clob getClob(String parameterName) throws SQLException
CLOB
参数为
java.sql.Clob
的Java编程语言对象。
parameterName
- 参数的名称
Clob
对象的Java编程语言。
如果该值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterName不对应于命名参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Array getArray(String parameterName) throws SQLException
Array
对象的ARRAY
获取JDBC ARRAY
参数的值。
parameterName
- 参数的名称
Array
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterName不对应于命名参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Date getDate(String parameterName, Calendar cal) throws SQLException
java.sql.Date
对象的DATE
获取JDBC DATE
参数的值,使用给定的Calendar
对象来构造日期。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区和区域设置的日期。
如果没有Calendar
对象,则驱动程序将使用默认的时区和区域设置。
parameterName
- 参数的名称
cal
- 驱动程序将用于构建日期的
Calendar
对象
NULL
,则结果为null
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setDate(java.lang.String, java.sql.Date)
Time getTime(String parameterName, Calendar cal) throws SQLException
java.sql.Time
对象的TIME
获取JDBC TIME
参数的值,使用给定的Calendar
对象构建时间。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区和区域设置的时间。
如果没有Calendar
对象,则驱动程序使用默认的时区和区域设置。
parameterName
- 参数的名称
cal
- 驱动程序将用于构建时间的
Calendar
对象
NULL
,则结果为null
。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setTime(java.lang.String, java.sql.Time)
Timestamp getTimestamp(String parameterName, Calendar cal) throws SQLException
TIMESTAMP
参数的值作为java.sql.Timestamp
对象,使用给定的Calendar
对象来构造Timestamp
对象。
使用Calendar
对象,驱动程序可以计算考虑到自定义时区和区域设置的时间戳。
如果没有Calendar
对象,则驱动程序将使用默认的时区和区域设置。
parameterName
- 参数的名称
cal
-在
Calendar
对象的驱动程序将用来构造时间戳
NULL
,则结果为null
。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setTimestamp(java.lang.String, java.sql.Timestamp)
URL getURL(String parameterName) throws SQLException
java.net.URL
对象的JDBC
DATALINK
参数的值。
parameterName
- 参数的名称
java.net.URL
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误,此方法在封闭的CallableStatement
,或者如果URL有问题
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setURL(java.lang.String, java.net.URL)
RowId getRowId(int parameterIndex) throws SQLException
ROWID
参数的值检索为
java.sql.RowId
对象。
parameterIndex
- 第一个参数是1,第二个是2,...
RowId
表示JDBC ROWID
值的RowId
对象作为指定参数。
如果参数包含SQL NULL
,则返回一个null
值。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
RowId getRowId(String parameterName) throws SQLException
ROWID
参数的值检索为
java.sql.RowId
对象。
parameterName
- 参数的名称
RowId
JDBC ROWID
值的RowId
对象作为指定参数。
如果参数包含SQL NULL
,则返回一个null
值。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setRowId(String parameterName, RowId x) throws SQLException
java.sql.RowId
对象。
当驱动程序将其发送到数据库时,将其转换为SQL ROWID
。
parameterName
- 参数的名称
x
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNString(String parameterName, String value) throws SQLException
String
对象。
驱动程序将其转换为SQL NCHAR
或NVARCHAR
或LONGNVARCHAR
parameterName
- 要设置的参数的名称
value
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNCharacterStream(String parameterName, Reader value, long length) throws SQLException
Reader
对象。
Reader
读取数据,直到达到文件结尾。
驱动程序必须从Java字符格式转换为数据库中的国家字符集。
parameterName
- 要设置的参数的名称
value
- 参数值
length
- 参数数据中的字符数。
SQLException
- 如果parameterName与命名参数不对应;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNClob(String parameterName, NClob value) throws SQLException
java.sql.NClob
对象。
该对象实现了java.sql.NClob
接口。
这个NClob
对象映射到一个SQL NCLOB
。
parameterName
- 要设置的参数的名称
value
- 参数值
SQLException
- 如果parameterName与命名参数不对应;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setClob(String parameterName, Reader reader, long length) throws SQLException
Reader
对象。
reader
必须包含由长度指定的SQLException
数,否则将在执行CallableStatement时生成CallableStatement
。
该方法与setCharacterStream (int, Reader, int)
方法不同,因为它通知驱动程序参数值应作为CLOB
发送到服务器。
当使用setCharacterStream
方法时,驱动程序可能需要额外的工作才能确定参数数据是否应以LONGVARCHAR
或CLOB
发送到服务器
parameterName
- 要设置的参数的名称
reader
- 包含用于设置参数值的数据的对象。
length
- 参数数据中的字符数。
SQLException
- 如果parameterName与命名参数不对应;
如果指定的长度小于零;
发生数据库访问错误,或者在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBlob(String parameterName, InputStream inputStream, long length) throws SQLException
InputStream
对象。
inputstream
必须包含由长度指定的字符数, SQLException
将在执行CallableStatement时生成CallableStatement
。
该方法与setBinaryStream (int, InputStream, int)
方法不同,因为它通知驱动程序参数值应作为BLOB
发送到服务器。
当使用setBinaryStream
方法时,驱动程序可能需要进行额外的工作才能确定是否将参数数据作为LONGVARBINARY
或BLOB
发送到服务器
parameterName
- 要设置的第二个参数的名称是2,...
inputStream
- 包含将参数值设置为的数据的对象。
length
- 参数数据中的字节数。
SQLException
- 如果parameterName与命名参数不对应;
如果指定的长度小于零;
如果输入流中的字节数与指定长度不匹配;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNClob(String parameterName, Reader reader, long length) throws SQLException
Reader
对象。
reader
必须包含由长度指定的SQLException
数,否则将在执行CallableStatement时生成CallableStatement
。
该方法与setCharacterStream (int, Reader, int)
方法不同,因为它通知驱动程序参数值应作为NCLOB
发送到服务器。
当使用setCharacterStream
方法时,驱动程序可能需要进行额外的工作才能确定参数数据是否应作为LONGNVARCHAR
或NCLOB
发送到服务器
parameterName
- 要设置的参数的名称
reader
- 包含将参数值设置为的数据的对象。
length
- 参数数据中的字符数。
SQLException
- 如果parameterName不对应于命名参数;
如果指定的长度小于零;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
NClob getNClob(int parameterIndex) throws SQLException
NCLOB
参数的值作为Java编程语言中的
java.sql.NClob
对象检索。
parameterIndex
- 第一个参数是1,第二个是2,依此类推
NClob
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterIndex无效;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
NClob getNClob(String parameterName) throws SQLException
java.sql.NClob
对象的
NCLOB
获取JDBC
NCLOB
参数的值。
parameterName
- 参数的名称
NClob
对象。
如果值为SQL NULL
,则返回值null
。
SQLException
- 如果parameterName不对应于named参数;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException
java.sql.SQLXML
对象。
当驱动程序将其发送到数据库时,将其转换为SQL XML
值。
parameterName
- 参数的名称
xmlObject
- 一个
SQLXML
对象,映射一个
SQL XML
值
SQLException
- 如果parameterName不对应于命名参数;
如果发生数据库访问错误;
这个方法被称为在关闭CallableStatement
或java.xml.transform.Result
, Writer
或OutputStream
为尚未关闭SQLXML
对象
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
SQLXML getSQLXML(int parameterIndex) throws SQLException
java.sql.SQLXML
对象获取
SQL XML
SQL XML参数的值。
parameterIndex
- 第一个参数的索引为1,第二个为2,...
SQLXML
对象映射一个
SQL XML
值
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
SQLXML getSQLXML(String parameterName) throws SQLException
SQL XML
参数为
java.sql.SQLXML
的Java编程语言对象。
parameterName
- 参数的名称
SQLXML
对象映射一个
SQL XML
值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
String getNString(int parameterIndex) throws SQLException
NCHAR
, NVARCHAR
或LONGNVARCHAR
作为参数String
Java编程语言。
对于固定长度类型的JDBC NCHAR
,返回的String
对象具有与数据库中SQL NCHAR
值相同的值,包括数据库添加的任何填充。
parameterIndex
- 第一个参数的索引为1,第二个为2,...
String
对象映射的
NCHAR
,
NVARCHAR
或
LONGNVARCHAR
值
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setNString(java.lang.String, java.lang.String)
String getNString(String parameterName) throws SQLException
NCHAR
, NVARCHAR
或LONGNVARCHAR
作为参数String
Java编程语言。
对于固定长度类型的JDBC NCHAR
,返回的String
对象与数据库中SQL NCHAR
值完全相同,包括数据库添加的任何填充。
parameterName
- 参数的名称
String
对象映射的
NCHAR
,
NVARCHAR
或
LONGNVARCHAR
值
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
setNString(java.lang.String, java.lang.String)
Reader getNCharacterStream(int parameterIndex) throws SQLException
java.io.Reader
对象获取指定参数的值。
访问时,它适用于使用NCHAR
, NVARCHAR
和LONGNVARCHAR
参数。
parameterIndex
- 第一个参数是1,第二个是2,...
java.io.Reader
对象;
如果值是SQL NULL
,返回的值是null
Java编程语言。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Reader getNCharacterStream(String parameterName) throws SQLException
java.io.Reader
对象获取指定参数的值。
它用于NCHAR
NVARCHAR
和LONGNVARCHAR
参数时使用。
parameterName
- 参数的名称
java.io.Reader
对象;
如果值为SQL NULL
,返回的值为null
,在Java编程语言
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
Reader getCharacterStream(int parameterIndex) throws SQLException
java.io.Reader
对象。
parameterIndex
- 第一个参数是1,第二个是2,...
java.io.Reader
对象;
如果值是SQL NULL
,返回的值是null
Java编程语言。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
Reader getCharacterStream(String parameterName) throws SQLException
java.io.Reader
对象获取指定参数的值。
parameterName
- 参数的名称
java.io.Reader
对象;
如果值为SQL NULL
,则返回的值为null
,在Java编程语言
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBlob(String parameterName, Blob x) throws SQLException
java.sql.Blob
对象。
当驱动程序将其发送到数据库时,将其转换为SQL BLOB
值。
parameterName
- 参数的名称
x
- 映射SQL
BLOB
值的
Blob
对象
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setClob(String parameterName, Clob x) throws SQLException
java.sql.Clob
对象。
当驱动程序将其发送到数据库时,将其转换为SQL CLOB
值。
parameterName
- 参数的名称
x
- 映射SQL
CLOB
值的
Clob
对象
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setAsciiStream(String parameterName, InputStream x, long length) throws SQLException
LONGVARCHAR
参数时,通过java.io.InputStream
发送它可能更java.io.InputStream
。
将根据需要从流中读取数据,直到达到文件结尾。
JDBC驱动程序将从ASCII到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterName
- 参数的名称
x
- 包含ASCII参数值的Java输入流
length
- 流中的字节数
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBinaryStream(String parameterName, InputStream x, long length) throws SQLException
LONGVARBINARY
参数时,通过java.io.InputStream
对象发送它可能更实用。
数据将根据需要从流中读取,直到达到文件结尾。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterName
- 参数的名称
x
- 包含二进制参数值的java输入流
length
- 流中的字节数
SQLException
- 如果parameterName不对应于命名参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setCharacterStream(String parameterName, Reader reader, long length) throws SQLException
Reader
对象,这是给定的长度的字符数。
当一个非常大的UNICODE值输入到LONGVARCHAR
参数时,通过java.io.Reader
对象发送它可能更实用。
数据将根据需要从流中读取,直到达到文件结尾。
JDBC驱动程序将从UNICODE到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
parameterName
- 参数的名称
reader
-所述
java.io.Reader
包含用作指定参数的UNICODE数据对象
length
- 流中的字符数
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setAsciiStream(String parameterName, InputStream x) throws SQLException
LONGVARCHAR
参数时,通过java.io.InputStream
发送它可能会更加java.io.InputStream
。
将根据需要从流中读取数据,直到达到文件结尾。
JDBC驱动程序将从ASCII到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
注意:请参阅您的JDBC驱动程序文档,以确定使用需要长度参数的版本setAsciiStream
可能会更有效。
parameterName
- 参数的名称
x
- 包含ASCII参数值的Java输入流
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBinaryStream(String parameterName, InputStream x) throws SQLException
LONGVARBINARY
参数时,通过一个java.io.InputStream
对象发送它可能会比较实用。
数据将根据需要从流中读取,直到达到文件结尾。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
注意:请参阅您的JDBC驱动程序文档,以确定使用一个长度参数的版本setBinaryStream
可能会更有效。
parameterName
- 参数的名称
x
- 包含二进制参数值的java输入流
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setCharacterStream(String parameterName, Reader reader) throws SQLException
Reader
对象。
当一个非常大的UNICODE值输入到LONGVARCHAR
参数时,通过java.io.Reader
对象发送它可能更实用。
数据将根据需要从流中读取,直到达到文件结尾。
JDBC驱动程序将从UNICODE到数据库字符格式进行任何必要的转换。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
注:请参考JDBC驱动程序文档,以确定它可能是更有效地使用一个版本的setCharacterStream
其带长度参数。
parameterName
- 参数的名称
reader
- 包含Unicode数据的
java.io.Reader
对象
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNCharacterStream(String parameterName, Reader value) throws SQLException
Reader
对象。
Reader
读取数据,直到达到文件结尾。
驱动程序必须从Java字符格式转换为数据库中的国家字符集。
注意:此流对象可以是标准Java流对象,也可以是实现标准接口的自己的子类。
注:请参考JDBC驱动程序文档,以确定它可能是更有效地使用一个版本的setNCharacterStream
其带长度参数。
parameterName
- 参数的名称
value
- 参数值
SQLException
- 如果parameterName不对应于named参数;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误;
或者这个方法在封闭的CallableStatement
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setClob(String parameterName, Reader reader) throws SQLException
Reader
对象。
该方法与setCharacterStream (int, Reader)
方法不同,因为它通知驱动程序参数值应作为CLOB
发送到服务器。
当使用setCharacterStream
方法时,驱动程序可能需要进行额外的工作才能确定参数数据是否应作为LONGVARCHAR
或CLOB
发送到服务器
注:请参考JDBC驱动程序文档,以确定它可能是更有效地使用一个版本的setClob
其带长度参数。
parameterName
- 参数的名称
reader
- 包含将参数值设置为的数据的对象。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setBlob(String parameterName, InputStream inputStream) throws SQLException
InputStream
对象。
该方法与setBinaryStream (int, InputStream)
方法不同,因为它通知驱动程序参数值应作为BLOB
发送到服务器。
当使用setBinaryStream
方法时,驱动程序可能需要进行额外的工作才能确定参数数据是否应作为LONGVARBINARY
或BLOB
发送到服务器
注:请参考JDBC驱动程序文档,以确定它可能是更有效地使用一个版本的setBlob
其带长度参数。
parameterName
- 参数的名称
inputStream
- 包含用于设置参数值的数据的对象。
SQLException
- 如果parameterName不对应于named参数;
如果发生数据库访问错误或在关闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
void setNClob(String parameterName, Reader reader) throws SQLException
Reader
对象。
该方法与setCharacterStream (int, Reader)
方法不同,因为它通知驱动程序参数值应作为NCLOB
发送到服务器。
当使用setCharacterStream
方法时,驱动程序可能必须进行额外的工作来确定参数数据是否应该作为LONGNVARCHAR
或NCLOB
发送到服务器
注:请参考JDBC驱动程序文档,以确定它可能是更有效地使用一个版本的setNClob
其带长度参数。
parameterName
- 参数的名称
reader
- 包含将参数值设置为的数据的对象。
SQLException
- 如果parameterName不对应于named参数;
如果司机不支持国家字符集;
如果驱动程序可以检测到可能发生数据转换错误;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
<T> T getObject(int parameterIndex, 类<T> type) throws SQLException
返回一个对象,表示OUT参数的值parameterIndex
并将从SQL类型的参数转换为所请求的Java数据类型,如果支持的转换。 如果不支持转换或为该类型指定了SQLException
则抛出SQLException
。
至少,实现必须支持附录B表B-3中定义的转换,并将适当的用户定义的SQL类型转换为实现SQLData
或Struct
的Java类型。 可以支持额外的转换,并定义供应商。
T
- 由此Class对象建模的类的类型
parameterIndex
- 第一个参数是1,第二个是2,依此类推
type
- 表示将数据类型转换为指定参数的类。
type
的实例
SQLException
- 如果不支持转换,则type为null或发生其他错误。
异常的getCause()方法可能会提供更详细的异常,例如,如果发生转换错误
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
<T> T getObject(String parameterName, 类<T> type) throws SQLException
返回一个对象,表示OUT参数的值parameterName
并将从SQL类型的参数转换为所请求的Java数据类型,如果支持的转换。 如果不支持转换或为该类型指定了SQLException
则抛出SQLException
。
至少,实现必须支持附录B表B-3中定义的转换,并将适当的用户定义的SQL类型转换为实现SQLData
或Struct
的Java类型。 可以支持额外的转换,并定义供应商。
T
- 由此Class对象建模的类的类型
parameterName
- 参数的名称
type
- 表示将指定参数转换为的Java数据类型的类。
type
的实例
SQLException
- 如果不支持转换,则type为null或发生其他错误。
异常的getCause()方法可能会提供更详细的异常,例如,如果发生转换错误
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持此方法
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类型。
比例参数可能进一步限定此类型。
scaleOrLength
- 对于java.sql.JDBCType.DECIMAL
或java.sql.JDBCType.NUMERIC types
,这是小数点后的位数。
对于Java对象类型InputStream
和Reader
,这是流或读取器中数据的长度。
对于所有其他类型,此值将被忽略。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法,或者如果x指定的Java对象是InputStream或Reader对象,并且scale参数的值小于零
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType
JDBCType
, SQLType
default void setObject(String parameterName, Object x, SQLType targetSqlType) throws SQLException
setObject(String parameterName, Object x, SQLType targetSqlType, int scaleOrLength)
,除了它假定为零。
默认实现将抛出SQLFeatureNotSupportedException
parameterName
- 参数的名称
x
- 包含输入参数值的对象
targetSqlType
- 要发送到数据库的SQL类型
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的targetSqlType
JDBCType
, SQLType
default void registerOutParameter(int parameterIndex, SQLType sqlType) throws SQLException
parameterIndex
到JDBC类型sqlType
。
所有OUT参数必须在执行存储过程之前进行注册。
sqlType
为OUT参数指定的JDBC类型决定了在get
方法中必须使用的Java类型,以读取该参数的值。
如果预期要返回给此输出参数的JDBC类型是特定于该特定的数据库, sqlType
可以是JDBCType.OTHER
或SQLType
由该JDBC驱动程序支持。 方法getObject(int)
检索该值。
默认实现将抛出SQLFeatureNotSupportedException
parameterIndex
- 第一个参数是1,第二个是2,依此类推
sqlType
- 由SQLType
定义的JDBC类型代码用于注册OUT参数。
如果参数是JDBC类型JDBCType.NUMERIC
或JDBCType.DECIMAL
, registerOutParameter
使用接受比例值的registerOutParameter
版本。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType
JDBCType
, SQLType
default void registerOutParameter(int parameterIndex, SQLType sqlType, int scale) throws SQLException
parameterIndex
为JDBC类型sqlType
。
所有OUT参数必须在执行存储过程之前进行注册。
由sqlType
为OUT参数指定的JDBC类型决定了在get
方法中必须使用的Java类型,以读取该参数的值。
这个版本registerOutParameter
当参数是JDBC类型应使用JDBCType.NUMERIC
或JDBCType.DECIMAL
。
默认实现将抛出SQLFeatureNotSupportedException
parameterIndex
- 第一个参数是1,第二个是2,依此类推
sqlType
- 由
SQLType
定义的JDBC类型代码用于注册OUT参数。
scale
- 小数点右侧所需的数字位数。
它必须大于或等于零。
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType
JDBCType
, SQLType
default void registerOutParameter(int parameterIndex, SQLType sqlType, String typeName) throws SQLException
registerOutParameter
应用于用户定义或REF
输出参数。
的用户定义类型的实例包括: STRUCT
, DISTINCT
, JAVA_OBJECT
,和指定数组类型。
所有OUT参数必须在执行存储过程之前进行注册。
对于用户定义的参数,还应该给出参数的完全限定的SQL类型名称,而REF
参数需要给出引用类型的完全限定类型名称。 不需要类型代码和类型名称信息的JDBC驱动程序可能会忽略它。 然而,为了便于携带,应用程序应始终为用户定义和REF
参数提供这些值。 虽然它是用于用户定义和REF
参数,但是该方法可以用于注册任何JDBC类型的参数。 如果该参数不具有用户定义或REF
类型,则typeName参数将被忽略。
注意:读取out参数的值时,必须使用Java类型对应于参数的注册SQL类型的getter方法。
默认实现将抛出SQLFeatureNotSupportedException
parameterIndex
- 第一个参数是1,第二个是2,...
sqlType
- 由
SQLType
定义的JDBC类型代码用于注册OUT参数。
typeName
- SQL结构化类型的全限定名称
SQLException
- 如果parameterIndex无效;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType
JDBCType
, SQLType
default void registerOutParameter(String parameterName, SQLType sqlType) throws SQLException
parameterName
到JDBC类型sqlType
。
所有OUT参数必须在执行存储过程之前进行注册。
通过指定JDBC类型sqlType
为OUT参数确定必须在所使用的Java类型get
方法来读取该参数的值。
如果预期要返回给此输出参数的JDBC类型是特定于该特定的数据库, sqlType
应该是JDBCType.OTHER
或SQLType
由该JDBC驱动程序支持..方法getObject(int)
检索值。
默认实现将抛出SQLFeatureNotSupportedException
parameterName
- 参数的名称
sqlType
- 由SQLType
定义的JDBC类型代码用于注册OUT参数。
如果参数是JDBC类型JDBCType.NUMERIC
或JDBCType.DECIMAL
, registerOutParameter
使用接受比例值的registerOutParameter
版本。
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType或JDBC驱动程序不支持此方法
JDBCType
, SQLType
default void registerOutParameter(String parameterName, SQLType sqlType, int scale) throws SQLException
parameterName
JDBC类型的sqlType
。
所有OUT参数必须在执行存储过程之前进行注册。
sqlType
为OUT参数指定的JDBC类型决定了在get
方法中必须使用的Java类型,以读取该参数的值。
这个版本registerOutParameter
当参数是JDBC类型应使用JDBCType.NUMERIC
或JDBCType.DECIMAL
。
默认实现将抛出SQLFeatureNotSupportedException
parameterName
- 参数的名称
sqlType
- 由
SQLType
定义的JDBC类型代码用于注册OUT参数。
scale
- 小数点右侧所需的数字位数。
它必须大于或等于零。
SQLException
- 如果parameterName不对应于一个命名参数;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType或JDBC驱动程序不支持此方法
JDBCType
, SQLType
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参数的值时,必须使用Java类型XXX对应于参数的注册SQL类型的getXXX
方法。
默认实现将抛出SQLFeatureNotSupportedException
parameterName
- 参数的名称
sqlType
- 由
SQLType
定义的JDBC类型代码用于注册OUT参数。
typeName
- SQL结构化类型的全限定名称
SQLException
- 如果parameterName与命名参数不对应;
如果发生数据库访问错误或在封闭的CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果JDBC驱动程序不支持指定的sqlType或JDBC驱动程序不支持此方法
JDBCType
,
SQLType
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.