©
本文档使用
php.cn手册 发布
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
public interface CallableStatement
用于执行 SQL 存储过程的接口。JDBC API 提供了一个存储过程 SQL 转义语法,该语法允许对所有 RDBMS 使用标准方式调用存储过程。此转义语法有一个包含结果参数的形式和一个不包含结果参数的形式。如果使用结果参数,则必须将其注册为 OUT 参数。其他参数可用于输入、输出或同时用于二者。参数是根据编号按顺序引用的,第一个参数的编号是 1。
{?= call <procedure-name>[(<arg1>,<arg2>, ...)]} {call <procedure-name>[(<arg1>,<arg2>, ...)]}
IN 参数值是使用继承自 PreparedStatement
的 set
方法设置的。在执行存储过程之前,必须注册所有 OUT 参数的类型;它们的值是在执行后通过此类提供的 get
方法获取的。
CallableStatement
可以返回一个 ResultSet
对象或多个 ResultSet
对象。多个 ResultSet
对象是使用继承自 Statement
的操作处理的。
为了获得最大的可移植性,某一调用的 ResultSet
对象和更新计数应该在获得输出参数的值之前处理。
Connection.prepareCall(java.lang.String)
,
ResultSet
字段摘要 |
---|
从接口 java.sql.Statement 继承的字段 |
---|
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO |
方法摘要 | |
---|---|
Array |
getArray(int parameterIndex)
以 Java 编程语言中 Array 对象的形式获取指定的 JDBC ARRAY 参数的值。 |
Array |
getArray(String parameterName)
以 Java 编程语言中 java.sql.ARRAY 对象的形式获取 JDBC ARRAY 参数的值。 |
BigDecimal |
getBigDecimal(int parameterIndex)
以 java.math.BigDecimal 对象的形式获取指定 JDBC NUMERIC 参数的值,小数点右边的位数与该参数值所包含的位数相同。 |
BigDecimal |
getBigDecimal(int parameterIndex,
int scale)
已过时。 使用 getBigDecimal(int parameterIndex) 或 getBigDecimal(String parameterName)
|
BigDecimal |
getBigDecimal(String parameterName)
以 java.math.BigDecimal 对象的形式获取 JDBC NUMERIC 参数的值,小数点右边的位数与该参数值所包含的位数相同。 |
Blob |
getBlob(int parameterIndex)
以 Java 编程语言中 java.sql.Clob 对象的形式获取指定的 JDBC CLOB 参数的值。 |
Blob |
getBlob(String parameterName)
以 Java 编程语言中 Blob 对象的形式获取 JDBC BLOB 参数的值。 |
boolean |
getBoolean(int parameterIndex)
以 Java 编程语言中 boolean 值的形式获取指定的 JDBC BIT 或 BOOLEAN 参数的值。 |
boolean |
getBoolean(String parameterName)
以 Java 编程语言中 boolean 值的形式获取 JDBC BIT 或 BOOLEAN 参数的值。 |
byte |
getByte(int parameterIndex)
以 Java 编程语言中 byte 的形式获取指定的 JDBC TINYINT 参数的值。 |
byte |
getByte(String parameterName)
以 Java 编程语言中 byte 值的形式获取 JDBC TINYINT 参数的值。 |
byte[] |
getBytes(int parameterIndex)
以 Java 编程语言中 byte 数组值的形式获取指定的 JDBC BINARY 或 VARBINARY 参数的值。 |
byte[] |
getBytes(String parameterName)
以 Java 编程语言中 byte 数组值的形式获取 JDBC BINARY 或 VARBINARY 参数的值。 |
Reader |
getCharacterStream(int parameterIndex)
以 Java 编程语言中 java.io.Reader 对象的形式获取指定参数的值。 |
Reader |
getCharacterStream(String parameterName)
以 Java 编程语言中 java.io.Reader 对象的形式获取指定参数的值。 |
Clob |
getClob(int parameterIndex)
以 Java 编程语言中 java.sql.Clob 对象的形式获取指定的 JDBC CLOB 参数的值。 |
Clob |
getClob(String parameterName)
以 Java 编程语言中 java.sql.CLOB 对象的形式获取 JDBC CLOB 参数的值。 |
Date |
getDate(int parameterIndex)
以 java.sql.Date 对象的形式获取指定 JDBC DATE 参数的值。 |
Date |
getDate(int parameterIndex,
Calendar cal)
以 java.sql.Date 对象的形式获取指定 JDBC DATE 参数的值,使用给定 Calendar 对象构造日期。 |
Date |
getDate(String parameterName)
以 java.sql.Date 对象的形式获取 JDBC DATE 参数的值。 |
Date |
getDate(String parameterName,
Calendar cal)
以 java.sql.Date 对象的形式获取 JDBC DATE 参数的值,使用给定 Calendar 对象构造日期。 |
double |
getDouble(int parameterIndex)
以 Java 编程语言中 double 值的形式获取指定的 JDBC DOUBLE 参数的值。 |
double |
getDouble(String parameterName)
以 Java 编程语言中 double 值的形式获取 JDBC DOUBLE 参数的值。 |
float |
getFloat(int parameterIndex)
以 Java 编程语言中 float 值的形式获取指定的 JDBC FLOAT 参数的值。 |
float |
getFloat(String parameterName)
以 Java 编程语言中 float 值的形式获取 JDBC FLOAT 参数的值。 |
int |
getInt(int parameterIndex)
以 Java 编程语言中 int 值的形式获取指定的 JDBC INTEGER 参数的值。 |
int |
getInt(String parameterName)
以 Java 编程语言中 int 值的形式获取 JDBC INTEGER 参数的值。 |
long |
getLong(int parameterIndex)
以 Java 编程语言中 long 值的形式获取指定的 JDBC BIGINT 参数的值。 |
long |
getLong(String parameterName)
以 Java 编程语言中 long 值的形式获取 JDBC BIGINT 参数的值。 |
Reader |
getNCharacterStream(int parameterIndex)
以 Java 编程语言中 java.io.Reader 对象的形式获取指定参数的值。 |
Reader |
getNCharacterStream(String parameterName)
以 Java 编程语言中 java.io.Reader 对象的形式获取指定参数的值。 |
NClob |
getNClob(int parameterIndex)
以 Java 编程语言中 java.sql.NClob 对象的形式获取指定的 JDBC NCLOB 参数的值。 |
NClob |
getNClob(String parameterName)
以 Java 编程语言中 java.sql.NClob 对象的形式获取 JDBC NCLOB 参数的值。 |
String |
getNString(int parameterIndex)
以 Java 编程语言中 String 的形式获取指定的 NCHAR 、NVARCHAR 或 LONGNVARCHAR 参数的值。 |
String |
getNString(String parameterName)
以 Java 编程语言中 String 的形式获取指定的 NCHAR 、NVARCHAR 或 LONGNVARCHAR 参数的值。 |
Object |
getObject(int parameterIndex)
以 Java 编程语言中 Object 的形式获取指定参数的值。 |
Object |
getObject(int parameterIndex,
Map<String,Class<?>> map)
返回一个表示 OUT 参数 parameterIndex 值的对象,并将 map 用于该参数值的自定义映射关系。 |
Object |
getObject(String parameterName)
以 Java 编程语言中 Object 的形式获取参数的值。 |
Object |
getObject(String parameterName,
Map<String,Class<?>> map)
返回一个表示 OUT 参数 parameterName 值的对象,并将 map 用于该参数值的自定义映射关系。 |
Ref |
getRef(int parameterIndex)
以 Java 编程语言中 Ref 对象的形式获取指定的 JDBC REF(<structured-type>) 参数的值。 |
Ref |
getRef(String parameterName)
以 Java 编程语言中 Ref 对象的形式获取 JDBC REF(<structured-type>) 参数的值。 |
RowId |
getRowId(int parameterIndex)
以 java.sql.RowId 对象的形式获取指定 JDBC ROWID 参数的值。 |
RowId |
getRowId(String parameterName)
以 java.sql.RowId 对象的形式获取指定 JDBC ROWID 参数的值。 |
short |
getShort(int parameterIndex)
以 Java 编程语言中 short 值的形式获取指定的 JDBC SMALLINT 参数的值。 |
short |
getShort(String parameterName)
以 Java 编程语言中 short 值的形式获取 JDBC SMALLINT 参数的值。 |
SQLXML |
getSQLXML(int parameterIndex)
以 Java 编程语言中 java.sql.SQLXML 对象的形式获取指定的 SQL XML 参数的值。 |
SQLXML |
getSQLXML(String parameterName)
以 Java 编程语言中 java.sql.SQLXML 对象的形式获取指定的 SQL XML 参数的值。 |
String |
getString(int parameterIndex)
以 Java 编程语言中 String 的形式获取指定的 JDBC CHAR 、VARCHAR 或 LONGVARCHAR 参数的值。 |
String |
getString(String parameterName)
以 Java 编程语言中 String 的形式获取 JDBC CHAR 、VARCHAR 或 LONGVARCHAR 参数的值。 |
Time |
getTime(int parameterIndex)
以 java.sql.Time 对象的形式获取指定 JDBC TIME 参数的值。 |
Time |
getTime(int parameterIndex,
Calendar cal)
以 java.sql.Time 对象的形式获取指定 JDBC TIME 参数的值,使用给定 Calendar 对象构造时间。 |
Time |
getTime(String parameterName)
以 java.sql.Time 对象的形式获取 JDBC TIME 参数的值。 |
Time |
getTime(String parameterName,
Calendar cal)
以 java.sql.Time 对象的形式获取 JDBC TIME 参数的值,使用给定 Calendar 对象构造时间。 |
Timestamp |
getTimestamp(int parameterIndex)
以 java.sql.Timestamp 对象的形式获取指定 JDBC TIMESTAMP 参数的值。 |
Timestamp |
getTimestamp(int parameterIndex,
Calendar cal)
以 java.sql.Timestamp 对象的形式获取指定 JDBC TIMESTAMP 参数的值,使用给定 Calendar 对象构造 Timestamp 对象。 |
Timestamp |
getTimestamp(String parameterName)
以 java.sql.Timestamp 对象的形式获取 JDBC TIMESTAMP 参数的值。 |
Timestamp |
getTimestamp(String parameterName,
Calendar cal)
以 java.sql.Timestamp 对象的形式获取 JDBC TIMESTAMP 参数的值,使用给定 Calendar 对象构造 Timestamp 对象。 |
URL |
getURL(int parameterIndex)
以 java.sql.URL 对象的形式获取指定 JDBC DATALINK 参数的值。 |
URL |
getURL(String parameterName)
以 java.net.URL 对象的形式获取 JDBC DATALINK 参数的值。 |
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)
注册指定的输出参数。 |
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)
注册指定的输出参数。 |
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 byte 数组。 |
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 值。 |
void |
setDate(String parameterName,
Date x,
Calendar cal)
使用给定的 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)
使用给定对象设置指定参数的值。 |
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 对象将指定参数设置为给定 java.sql.Time 值。 |
void |
setTimestamp(String parameterName,
Timestamp x)
将指定参数设置为给定 java.sql.Timestamp 值。 |
void |
setTimestamp(String parameterName,
Timestamp x,
Calendar cal)
使用给定的 Calendar 对象将指定参数设置为给定 java.sql.Timestamp 值。 |
void |
setURL(String parameterName,
URL val)
将指定参数设置为给定 java.net.URL 对象。 |
boolean |
wasNull()
查询最后一个读取的 OUT 参数是否为 SQL NULL 。 |
从接口 java.sql.PreparedStatement 继承的方法 |
---|
addBatch, clearParameters, execute, 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, setRef, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL |
从接口 java.sql.Statement 继承的方法 |
---|
addBatch, cancel, clearBatch, clearWarnings, close, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isPoolable, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout |
从接口 java.sql.Wrapper 继承的方法 |
---|
isWrapperFor, unwrap |
方法详细信息 |
---|
void registerOutParameter(int parameterIndex, int sqlType) throws SQLException
parameterIndex
将 OUT 参数注册为 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 参数都必须在执行存储过程前注册。
sqlType
为 OUT 参数指定的 JDBC 类型确定必须用于 get
方法,以读取该参数值的 Java 类型。
这种形式的 registerOutParameter
应该在参数是 JDBC 类型 NUMERIC
或 DECIMAL
时使用。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推sqlType
- 由 java.sql.Types
定义的 SQL 类型代码。scale
- 小数点右边所需的位数。该参数必须大于等于 0。
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
。注意,此方法只应该在调用获取方法之后调用;否则没有用来确定它是否为 null
的值。
NULL
,则返回 true
;否则返回 false
SQLException
- 如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法String getString(int parameterIndex) throws SQLException
String
的形式获取指定的 JDBC CHAR
、VARCHAR
或 LONGVARCHAR
参数的值。
对于固定长度类型 SQL CHAR
,返回的 String
对象与数据库中的 JDBC CHAR
值完全相同,包括数据库添加的任何填充数据。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setString(java.lang.String, java.lang.String)
boolean getBoolean(int parameterIndex) throws SQLException
boolean
值的形式获取指定的 JDBC BIT
或 BOOLEAN
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 false
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setBoolean(java.lang.String, boolean)
byte getByte(int parameterIndex) throws SQLException
byte
的形式获取指定的 JDBC TINYINT
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 0
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setByte(java.lang.String, byte)
short getShort(int parameterIndex) throws SQLException
short
值的形式获取指定的 JDBC SMALLINT
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 0
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setShort(java.lang.String, short)
int getInt(int parameterIndex) throws SQLException
int
值的形式获取指定的 JDBC INTEGER
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 0
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setInt(java.lang.String, int)
long getLong(int parameterIndex) throws SQLException
long
值的形式获取指定的 JDBC BIGINT
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 0
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setLong(java.lang.String, long)
float getFloat(int parameterIndex) throws SQLException
float
值的形式获取指定的 JDBC FLOAT
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 0
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setFloat(java.lang.String, float)
double getDouble(int parameterIndex) throws SQLException
double
值的形式获取指定的 JDBC DOUBLE
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 0
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setDouble(java.lang.String, double)
BigDecimal getBigDecimal(int parameterIndex, int scale) throws SQLException
getBigDecimal(int parameterIndex)
或 getBigDecimal(String parameterName)
java.math.BigDecimal
对象的形式获取指定 JDBC NUMERIC
参数的值,小数点右边有 scale 个位数。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推scale
- 小数点右边的位数
NULL
,则结果为 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setBigDecimal(java.lang.String, java.math.BigDecimal)
byte[] getBytes(int parameterIndex) throws SQLException
byte
数组值的形式获取指定的 JDBC BINARY
或 VARBINARY
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setBytes(java.lang.String, byte[])
Date getDate(int parameterIndex) throws SQLException
java.sql.Date
对象的形式获取指定 JDBC DATE
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setDate(java.lang.String, java.sql.Date)
Time getTime(int parameterIndex) throws SQLException
java.sql.Time
对象的形式获取指定 JDBC TIME
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setTime(java.lang.String, java.sql.Time)
Timestamp getTimestamp(int parameterIndex) throws SQLException
java.sql.Timestamp
对象的形式获取指定 JDBC TIMESTAMP
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setTimestamp(java.lang.String, java.sql.Timestamp)
Object getObject(int parameterIndex) throws SQLException
Object
的形式获取指定参数的值。如果值为 SQL NULL
,则驱动程序返回一个 Java null
。
此方法返回一个 Java 对象,其类型对应于使用 registerOutParameter
方法为此参数注册的 JDBC 类型。通过将目标 JDBC 类型注册为 java.sql.Types.OTHER
,可以使用此方法来读取特定于数据库的抽象数据类型。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
java.lang.Object
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法Types
,
setObject(java.lang.String, java.lang.Object, int, int)
BigDecimal getBigDecimal(int parameterIndex) throws SQLException
java.math.BigDecimal
对象的形式获取指定 JDBC NUMERIC
参数的值,小数点右边的位数与该参数值所包含的位数相同。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NULL
,则结果为 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法setBigDecimal(java.lang.String, java.math.BigDecimal)
Object getObject(int parameterIndex, Map<String,Class<?>> map) throws SQLException
parameterIndex
值的对象,并将 map
用于该参数值的自定义映射关系。
此方法返回一个 Java 对象,其类型对应于使用 registerOutParameter
方法为此参数注册的 JDBC 类型。通过将目标 JDBC 类型注册为 java.sql.Types.OTHER
,可以使用此方法来读取特定于数据库的抽象数据类型。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推map
- SQL 类型名称到 Java 类的映射关系
java.lang.Object
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setObject(java.lang.String, java.lang.Object, int, int)
Ref getRef(int parameterIndex) throws SQLException
Ref
对象的形式获取指定的 JDBC REF(<structured-type>)
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
Ref
对象形式的参数值。如果值为 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Blob getBlob(int parameterIndex) throws SQLException
java.sql.Clob
对象的形式获取指定的 JDBC CLOB
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
Blob
对象形式的参数值。如果值为 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Clob getClob(int parameterIndex) throws SQLException
java.sql.Clob
对象的形式获取指定的 JDBC 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
java.sql.Date
对象的形式获取指定 JDBC 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
java.sql.Time
对象的形式获取指定 JDBC 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
java.sql.Timestamp
对象的形式获取指定 JDBC 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 类型。
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
的 OUT 参数注册为 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
。
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, int scale) throws SQLException
parameterName
的参数注册为 JDBC 类型 sqlType
。所有 OUT 参数都必须在执行存储过程前注册。
sqlType
为 OUT 参数指定的 JDBC 类型确定必须用于 get
方法,以读取该参数值的 Java 类型。
这种形式的 registerOutParameter
应该在参数是 JDBC 类型 NUMERIC
或 DECIMAL
时使用。
parameterName
- 参数名sqlType
- 由 java.sql.Types
定义的 SQL 类型代码。scale
- 小数点右边所需的位数。该参数必须大于等于 0。
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 参数的值时,必须使用 getXXX
方法,其 Java 类型 XXX 对应于参数的已注册 SQL 类型。
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 驱动程序不支持此方法Types
URL getURL(int parameterIndex) throws SQLException
java.sql.URL
对象的形式获取指定 JDBC DATALINK
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,……
DATALINK
值的 java.net.URL
对象
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 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法,或者 URL 是错误的
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 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 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 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法getFloat(int)
void setDouble(String parameterName, double x) throws SQLException
double
值。在将该值发送到数据库时,驱动程序将它转换成一个 SQL DOUBLE
值。
parameterName
- 参数名x
- 参数值
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法getDouble(int)
void setBigDecimal(String parameterName, BigDecimal x) throws SQLException
java.math.BigDecimal
值。在将该值发送到数据库时,驱动程序将它转换成一个 SQL NUMERIC
值。
parameterName
- 参数名x
- 参数值
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 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
值。在将该值发送到数据库时,驱动程序将它转换成一个 SQL DATE
值。
parameterName
- 参数名x
- 参数值
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法getDate(int)
void setTime(String parameterName, Time x) throws SQLException
java.sql.Time
值。在将该值发送到数据库时,驱动程序将它转换成一个 SQL TIME
值。
parameterName
- 参数名x
- 参数值
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 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
发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。JDBC 驱动程序将执行从 ASCII 到数据库 char 格式的任何必要转换。
注:此流对象可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
parameterName
- 参数名x
- 包含 ASCII 参数值的 Java 输入流length
- 流中的字节数
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setBinaryStream(String parameterName, InputStream x, int length) throws SQLException
LONGVARBINARY
参数时,通过 java.io.InputStream
对象发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。
注:此流对象可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
parameterName
- 参数名x
- 包含二进制参数值的 java 输入流length
- 流中的字节数
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setObject(String parameterName, Object x, int targetSqlType, int scale) throws SQLException
java.lang
的等效对象。
在被发送到数据库之前,给定 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
- 如果 targetSqlType
是 ARRAY
、BLOB
、CLOB
、DATALINK
、JAVA_OBJECT
、NCHAR
、NCLOB
、NVARCHAR
、LONGNVARCHAR
、REF
、ROWID
、SQLXML
或 STRUCT
数据类型之一并且 JDBC 驱动程序不支持此数据类型Types
,
getObject(int)
void setObject(String parameterName, Object x, int targetSqlType) throws SQLException
setObject
方法。
parameterName
- 参数名x
- 包含输入参数值的对象targetSqlType
- 要发送到数据库的 SQL 类型(在 java.sql.Types 中定义)
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 targetSqlType
是 ARRAY
、BLOB
、CLOB
、DATALINK
、JAVA_OBJECT
、NCHAR
、NCLOB
、NVARCHAR
、LONGNVARCHAR
、REF
、ROWID
、SQLXML
或 STRUCT
数据类型之一并且 JDBC 驱动程序不支持此数据类型getObject(int)
void setObject(String parameterName, Object x) throws SQLException
Object
;所以,应该对内置类型使用 java.lang
的等效对象。
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 驱动程序不支持此方法getObject(int)
void setCharacterStream(String parameterName, Reader reader, int length) throws SQLException
Reader
对象,该对象是给定的字符长度数。在将一个非常大的 UNICODE 值输入给 LONGVARCHAR
参数时,通过 java.io.Reader
对象发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。JDBC 驱动程序将执行从 UNICODE 到数据库 char 格式的任何必要转换。
注:此流对象可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
parameterName
- 参数名reader
- 包含用作指定参数的 UNICODE 数据的 java.io.Reader
对象length
- 流中的字节数
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setDate(String parameterName, Date x, Calendar cal) throws SQLException
Calendar
对象将指定参数设置为给定 java.sql.Date
值。驱动程序使用 Calendar
对象构造一个 SQL DATE
值,该值随后被驱动程序发送给数据库。利用 Calendar
对象,驱动程序可以在考虑自定义时区的情况下计算日期。如果没有指定任何 Calendar
对象,那么驱动程序将使用默认时区,该时区是运行应用程序的虚拟机所在的时区。
parameterName
- 参数名x
- 参数值cal
- 供驱动程序用来构造日期的 Calendar
对象
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法getDate(int)
void setTime(String parameterName, Time x, Calendar cal) throws SQLException
Calendar
对象将指定参数设置为给定 java.sql.Time
值。驱动程序使用 Calendar
对象构造一个 SQL TIME
值,该值随后被驱动程序发送给数据库。利用 Calendar
对象,驱动程序可以在考虑自定义时区的情况下计算时间。如果没有指定任何 Calendar
对象,那么驱动程序将使用默认时区,该时区是运行应用程序的虚拟机所在的时区。
parameterName
- 参数名x
- 参数值cal
- 供驱动程序用来构造时间的 Calendar
对象
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法getTime(int)
void setTimestamp(String parameterName, Timestamp x, Calendar cal) throws SQLException
Calendar
对象将指定参数设置为给定 java.sql.Timestamp
值。驱动程序使用 Calendar
对象构造一个 SQL TIMESTAMP
值,该值随后被驱动程序发送给数据库。利用 Calendar
对象,驱动程序可以在考虑自定义时区的情况下计算时间戳。如果没有指定任何 Calendar
对象,那么驱动程序将使用默认时区,该时区是运行应用程序的虚拟机所在的时区。
parameterName
- 参数名x
- 参数值cal
- 供驱动程序用来构造时间戳的 Calendar
对象
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 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 参数,该名称是所引用类型的类型名称。
尽管此方法是供用户定义的参数和 Ref 参数使用的,但也可以将其用于设置任何 JDBC 类型的 null 参数。如果参数没有用户定义的类型或 REF 类型,则忽略 typeName。
parameterName
- 参数名sqlType
- 取自 java.sql.Types
的一个值typeName
- SQL 用户定义类型的完全限定名;如果该参数不是用户定义的类型或 SQL REF
值,则忽略它
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法String getString(String parameterName) throws SQLException
String
的形式获取 JDBC CHAR
、VARCHAR
或 LONGVARCHAR
参数的值。
对于固定长度类型 JDBC CHAR
,返回的 String
对象与数据库拥有的 SQL CHAR
值完全相同,包括数据库添加的任何填充数据。
parameterName
- 参数名
NULL
,则结果为 null
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setString(java.lang.String, java.lang.String)
boolean getBoolean(String parameterName) throws SQLException
boolean
值的形式获取 JDBC BIT
或 BOOLEAN
参数的值。
parameterName
- 参数名
NULL
,则结果为 false
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setBoolean(java.lang.String, boolean)
byte getByte(String parameterName) throws SQLException
byte
值的形式获取 JDBC TINYINT
参数的值。
parameterName
- 参数名
NULL
,则结果为 0
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setByte(java.lang.String, byte)
short getShort(String parameterName) throws SQLException
short
值的形式获取 JDBC SMALLINT
参数的值。
parameterName
- 参数名
NULL
,则结果为 0
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setShort(java.lang.String, short)
int getInt(String parameterName) throws SQLException
int
值的形式获取 JDBC INTEGER
参数的值。
parameterName
- 参数名
NULL
,则结果为 0
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setInt(java.lang.String, int)
long getLong(String parameterName) throws SQLException
long
值的形式获取 JDBC BIGINT
参数的值。
parameterName
- 参数名
NULL
,则结果为 0
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setLong(java.lang.String, long)
float getFloat(String parameterName) throws SQLException
float
值的形式获取 JDBC FLOAT
参数的值。
parameterName
- 参数名
NULL
,则结果为 0
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setFloat(java.lang.String, float)
double getDouble(String parameterName) throws SQLException
double
值的形式获取 JDBC DOUBLE
参数的值。
parameterName
- 参数名
NULL
,则结果为 0
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setDouble(java.lang.String, double)
byte[] getBytes(String parameterName) throws SQLException
byte
数组值的形式获取 JDBC BINARY
或 VARBINARY
参数的值。
parameterName
- 参数名
NULL
,则结果为 null
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setBytes(java.lang.String, byte[])
Date getDate(String parameterName) throws SQLException
java.sql.Date
对象的形式获取 JDBC DATE
参数的值。
parameterName
- 参数名
NULL
,则结果为 null
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 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
对象的形式获取 JDBC TIMESTAMP
参数的值。
parameterName
- 参数名
NULL
,则结果为 null
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setTimestamp(java.lang.String, java.sql.Timestamp)
Object getObject(String parameterName) throws SQLException
Object
的形式获取参数的值。如果值为 SQL NULL
,则驱动程序返回一个 Java null
。
此方法返回一个 Java 对象,其类型对应于使用 registerOutParameter
方法为此参数注册的 JDBC 类型。通过将目标 JDBC 类型注册为 java.sql.Types.OTHER
,可以使用此方法来读取特定于数据库的抽象数据类型。
parameterName
- 参数名
java.lang.Object
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Types
,
setObject(java.lang.String, java.lang.Object, int, int)
BigDecimal getBigDecimal(String parameterName) throws SQLException
java.math.BigDecimal
对象的形式获取 JDBC NUMERIC
参数的值,小数点右边的位数与该参数值所包含的位数相同。
parameterName
- 参数名
NULL
,则结果为 null
。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setBigDecimal(java.lang.String, java.math.BigDecimal)
Object getObject(String parameterName, Map<String,Class<?>> map) throws SQLException
parameterName
值的对象,并将 map
用于该参数值的自定义映射关系。
此方法返回一个 Java 对象,其类型对应于使用 registerOutParameter
方法为此参数注册的 JDBC 类型。通过将目标 JDBC 类型注册为 java.sql.Types.OTHER
,可以使用此方法来读取特定于数据库的抽象数据类型。
parameterName
- 参数名map
- SQL 类型名称到 Java 类的映射关系
java.lang.Object
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setObject(java.lang.String, java.lang.Object, int, int)
Ref getRef(String parameterName) throws SQLException
Ref
对象的形式获取 JDBC REF(<structured-type>)
参数的值。
parameterName
- 参数名
Ref
对象形式的参数值。如果值为 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Blob getBlob(String parameterName) throws SQLException
Blob
对象的形式获取 JDBC BLOB
参数的值。
parameterName
- 参数名
Blob
对象形式的参数值。如果值为 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Clob getClob(String parameterName) throws SQLException
java.sql.CLOB
对象的形式获取 JDBC CLOB
参数的值。
parameterName
- 参数名
Clob
对象形式的参数值。如果值为 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Array getArray(String parameterName) throws SQLException
java.sql.ARRAY
对象的形式获取 JDBC ARRAY
参数的值。
parameterName
- 参数名
ARRAY
对象形式的参数值。如果值为 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Date getDate(String parameterName, Calendar cal) throws SQLException
java.sql.Date
对象的形式获取 JDBC DATE
参数的值,使用给定 Calendar
对象构造日期。利用 Calendar
对象,驱动程序可以在考虑自定义时区和语言环境的情况下计算日期。如果没有指定任何 Calendar
对象,那么驱动程序将使用默认时区和语言环境。
parameterName
- 参数名cal
- 供驱动程序用来构造日期的 Calendar
对象
NULL
,则结果为 null
。
SQLException
- 如果 parameterName 并不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setDate(java.lang.String, java.sql.Date)
Time getTime(String parameterName, Calendar cal) throws SQLException
java.sql.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
java.sql.Timestamp
对象的形式获取 JDBC 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 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法,或者 URL 有问题
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setURL(java.lang.String, java.net.URL)
RowId getRowId(int parameterIndex) throws SQLException
java.sql.RowId
对象的形式获取指定 JDBC ROWID
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,……
ROWID
值的 RowId
对象。如果该参数包含一个 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法RowId getRowId(String parameterName) throws SQLException
java.sql.RowId
对象的形式获取指定 JDBC ROWID
参数的值。
parameterName
- 参数名
ROWID
值的 RowId
对象。如果该参数包含一个 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setRowId(String parameterName, RowId x) throws SQLException
java.sql.RowId
对象。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL ROWID
。
parameterName
- 参数名x
- 参数值
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setNString(String parameterName, String value) throws SQLException
String
对象。驱动程序将此对象转换成一个 SQL NCHAR
、NVARCHAR
或 LONGNVARCHAR
。
parameterName
- 要设置的参数的名称value
- 参数值
SQLException
- 如果 parameterName 不对应于指定参数;如果驱动程序不支持国家字符 (national character) 集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setNCharacterStream(String parameterName, Reader value, long length) throws SQLException
Reader
对象。Reader
将读取数据,直到到达文件末尾。驱动程序执行从 Java 字符格式到数据库中国家字符集的必要转换。
parameterName
- 要设置的参数名参数值
- 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
必须包含 length 指定的字符数,否则在执行 CallableStatement
时将生成一个 SQLException
。此方法不同于 setCharacterStream (int, Reader, int)
方法,因为它会通知驱动程序应该将参数值作为 CLOB
发送给服务器。在使用 setCharacterStream
方法时,驱动程序可能必须做一些额外的工作,以确定应该将参数数据作为 LONGVARCHAR
还是 CLOB
发送给服务器
parameterName
- 要设置的参数名reader
- 包含用来设置参数值的数据的对象。length
- 参数数据中的字符数。
SQLException
- 如果 parameterName 不对应于指定参数;如果指定的 length 小于 0;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setBlob(String parameterName, InputStream inputStream, long length) throws SQLException
InputStream
对象。inputstream
必须包含 length 指定的字符数,否则在执行 CallableStatement
时将生成一个 SQLException
。此方法不同于 setBinaryStream (int, InputStream, int)
方法,因为它会通知驱动程序应该将参数值作为 BLOB
发送给服务器。在使用 setBinaryStream
方法时,驱动程序可能必须做一些额外的工作,以确定应该将参数数据作为 LONGVARBINARY
还是 BLOB
发送给服务器
parameterName
- 要设置的参数名inputStream
- 包含用来设置参数值的数据的对象。length
- 参数数据中的字节数。
SQLException
- 如果 parameterName 不对应于指定参数;如果指定的 length 小于 0;如果输入流中的字节数与指定 length 不匹配;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setNClob(String parameterName, Reader reader, long length) throws SQLException
Reader
对象。reader
必须包含 length 指定的字符数,否则在执行 CallableStatement
时将生成一个 SQLException
。此方法不同于 setCharacterStream (int, Reader, int)
方法,因为它会通知驱动程序应该将参数值作为 NCLOB
发送给服务器。在使用 setCharacterStream
方法时,驱动程序可能必须做一些额外的工作,以确定应该将参数数据作为 LONGNVARCHAR
还是 NCLOB
发送给服务器
parameterName
- 要设置的参数名reader
- 包含用于设置参数值的数据的对象。length
- 参数数据中的字符数。
SQLException
- 如果 parameterName 不对应于指定参数;如果指定 length 小于 0;如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法NClob getNClob(int parameterIndex) throws SQLException
java.sql.NClob
对象的形式获取指定的 JDBC NCLOB
参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,依此类推
NClob
对象形式的参数值。如果值为 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterIndex 无效;如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法NClob getNClob(String parameterName) throws SQLException
java.sql.NClob
对象的形式获取 JDBC NCLOB
参数的值。
parameterName
- 参数名
NClob
对象形式的参数值。如果值为 SQL NULL
,则返回 null
值。
SQLException
- 如果 parameterName 不对应于指定参数;如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException
java.sql.SQLXML
对象。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL XML
值。
parameterName
- 参数名xmlObject
- 映射 SQL XML
值的 SQLXML
对象
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误;在关闭的 CallableStatement
上调用此方法,或者 java.xml.transform.Result
、Writer
或 OutputStream
没有关闭(对于 SQLXML
对象而言)
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法SQLXML getSQLXML(int parameterIndex) throws SQLException
java.sql.SQLXML
对象的形式获取指定的 SQL XML
参数的值。
parameterIndex
- 第一个参数的索引是 1,第二个参数的索引是 2,……
SQL XML
值的 SQLXML
对象
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法SQLXML getSQLXML(String parameterName) throws SQLException
java.sql.SQLXML
对象的形式获取指定的 SQL XML
参数的值。
parameterName
- 参数名
SQL XML
值的 SQLXML
对象
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法String getNString(int parameterIndex) throws SQLException
String
的形式获取指定的 NCHAR
、NVARCHAR
或 LONGNVARCHAR
参数的值。
对于固定长度类型 JDBC NCHAR
,返回的 String
对象与数据库拥有的 SQL NCHAR
值完全相同,包括数据库添加的任何填充数据。
parameterIndex
- 第一个参数的索引是 1,第二个参数的索引是 2,……
NCHAR
、NVARCHAR
或 LONGNVARCHAR
值的 String
对象
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法setNString(java.lang.String, java.lang.String)
String getNString(String parameterName) throws SQLException
String
的形式获取指定的 NCHAR
、NVARCHAR
或 LONGNVARCHAR
参数的值。
对于固定长度类型 JDBC NCHAR
,返回的 String
对象与数据库中所拥有的 SQL NCHAR
值完全相同,包括数据库添加的任何填充数据。
parameterName
- 参数名
NCHAR
、NVARCHAR
或 LONGNVARCHAR
值的 String
对象
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 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
,则返回值为 Java 编程语言中的 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Reader getNCharacterStream(String parameterName) throws SQLException
java.io.Reader
对象的形式获取指定参数的值。此方法用于访问 NCHAR
、NVARCHAR
和 LONGNVARCHAR
参数时。
parameterName
- 参数名
java.io.Reader
对象;如果该值为 SQL NULL
,则返回值是 Java 编程语言中的 null
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法Reader getCharacterStream(int parameterIndex) throws SQLException
java.io.Reader
对象的形式获取指定参数的值。
parameterIndex
- 第一个参数是 1,第二个参数是 2,……
java.io.Reader
对象;如果值为 SQL NULL
,则返回值为 Java 编程语言中的 null
。
SQLException
- 如果 parameterIndex 无效;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法Reader getCharacterStream(String parameterName) throws SQLException
java.io.Reader
对象的形式获取指定参数的值。
parameterName
- 参数名
java.io.Reader
对象;如果该值为 SQL NULL
,则返回值是 Java 编程语言中的 null
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 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 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setAsciiStream(String parameterName, InputStream x, long length) throws SQLException
LONGVARCHAR
参数时,通过 java.io.InputStream
发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。驱动程序将执行从 ASCII 到数据库 char 格式的任何必要转换。
注:此流对象既可以是一个标准 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 到数据库 char 格式的任何必要转换。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
parameterName
- 参数名reader
- 包含用作指定参数的 UNICODE 数据的 java.io.Reader
对象length
- 流中的字节数
SQLException
- 如果 parameterName 不对应于给定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setAsciiStream(String parameterName, InputStream x) throws SQLException
LONGVARCHAR
参数时,通过 java.io.InputStream
发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。JDBC 驱动程序将执行从 ASCII 到数据库 char 格式的任何必要转换。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
注:查询 JDBC 驱动程序文档,以确定使用带 length 参数的 setAsciiStream
是否更有效。
parameterName
- 参数名x
- 包含 ASCII 参数值的 Java 输入流x
- 参数值
SQLException
- 如果 parameterName 不对应于给定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setBinaryStream(String parameterName, InputStream x) throws SQLException
LONGVARBINARY
参数时,通过 java.io.InputStream
对象发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
注:查询 JDBC 驱动程序文档,以确定使用带 length 参数的 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 到数据库 char 格式的任何必要转换。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
注:查询 JDBC 驱动程序文档,以确定使用带 length 参数的 setCharacterStream
是否更有效。
parameterName
- 参数名reader
- 包含 Unicode 数据的 java.io.Reader
对象
SQLException
- 如果 parameterName 不对应于给定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setNCharacterStream(String parameterName, Reader value) throws SQLException
Reader
对象。Reader
将读取数据,直到到达文件末尾。驱动程序执行从 Java 字符格式到数据库中国家字符集的必要转换。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
注:查询 JDBC 驱动程序文档,以确定使用带 length 参数的 setNCharacterStream
是否更有效。
parameterName
- 要设置的参数名value
- 参数值
SQLException
- 如果 parameterName 不对应于给定参数;如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setClob(String parameterName, Reader reader) throws SQLException
Reader
对象。此方法不同于 setCharacterStream (int, Reader)
方法,因为它会通知驱动程序应该将参数值作为 CLOB
发送给服务器。在使用 setCharacterStream
方法时,驱动程序可能必须做一些额外的工作,以确定应该将参数数据作为 LONGVARCHAR
还是 CLOB
发送给服务器。
注:查询 JDBC 驱动程序文档,以确定使用带 length 参数的 setClob
是否更有效。
parameterName
- 参数名reader
- 包含用来设置参数值的数据的对象。
SQLException
- 如果 parameterName 不对应于指定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setBlob(String parameterName, InputStream inputStream) throws SQLException
InputStream
对象。此方法不同于 setBinaryStream (int, InputStream)
方法,因为它会通知驱动程序应该将参数值作为 BLOB
发送给服务器。在使用 setBinaryStream
方法时,驱动程序可能必须做一些额外的工作,以确定应该将参数数据作为 LONGVARBINARY
还是 BLOB
发送给服务器。
注:查询 JDBC 驱动程序文档,以确定使用带 length 参数的 setBlob
是否更有效。
parameterName
- 参数名inputStream
- 包含用来设置参数值的数据的对象。
SQLException
- 如果 parameterName 不对应于给定参数;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法void setNClob(String parameterName, Reader reader) throws SQLException
Reader
对象。此方法不同于 setCharacterStream (int, Reader)
方法,因为它会通知驱动程序应该将参数值作为 NCLOB
发送给服务器。在使用 setCharacterStream
方法时,驱动程序可能必须做一些额外的工作,以确定应该将参数数据作为 LONGNVARCHAR
还是 NCLOB
发送给服务器。
注:查询 JDBC 驱动程序文档,以确定使用带 length 参数的 setNClob
是否更有效。
parameterName
- 参数名reader
- 包含用来设置参数值的数据的对象。
SQLException
- 如果 parameterName 不对应于给定参数;如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误,或者在关闭的 CallableStatement
上调用此方法
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。