|
JavaTM 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.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 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。