JavaTM Platform
Standard Ed. 6

javax.sql
接口 RowSet

所有超级接口:
ResultSet, Wrapper
所有已知子接口:
CachedRowSet, FilteredRowSet, JdbcRowSet, JoinRowSet, SyncResolver, WebRowSet

public interface RowSet
     
extends ResultSet

该接口添加了对 JavaBeansTM 组件模型的 JDBC API 支持。rowset 可用作可视化 Bean 开发环境中的 JavaBeans 组件,它可以在设计时创建和配置并在运行时执行。

RowSet 接口提供一组 JavaBeans 属性,这些属性允许配置一个 RowSet 实例来连接 JDBC 数据源并从中读取某些数据。一组设置方法(setIntsetBytessetString 等等)提供将输入参数传递到 rowset 命令属性的方式。在一般情况下,此命令是 rowset 从关系数据库获取其数据时所使用的 SQL 查询。

RowSet 接口支持 JavaBeans 事件,允许应用程序中的其他组件在 rowset 发生事件时(如值的更改)得到通知。

RowSet 接口是唯一的,因为需要使用其他 JDBC API 来实现它。换句话说,RowSet 实现是在 JDBC 驱动程序“顶部”执行的软件层。任何人都可以提供 RowSet 接口的实现,包括希望将 RowSet 实现作为其 JDBC 产品的一部分提供的 JDBC 驱动程序供应商。

RowSet 对象可以建立一个与数据源的连接并在其整个生命周期中维持该连接,在此情况下,该对象被称为连接的 rowset。rowset 还可以建立一个与数据源的连接,从其获取数据,然后关闭它。这种 rowset 被称为非连接 rowset。非连接 rowset 可以在断开时更改其数据,然后将这些更改发送回原始数据源,不过它必须重新建立连接才能完成此操作。

非连接 rowset 可以具有与之关联的 reader(RowSetReader 对象)和 writer(RowSetWriter 对象)。可以多种方式实现 reader 来使用数据填充 rowset,包括从非关系型数据源获取数据。也可以多种方式实现 writer 来将对 rowset 的数据所做的更改传回底层数据源。

Rowset 易于使用。RowSet 接口扩展了标准 java.sql.ResultSet 接口。RowSetMetaData 接口扩展了 java.sql.ResultSetMetaData 接口。因此,熟悉 JDBC API 的开发人员必须学习少数几个新 API 才能使用 rowset。此外,与 JDBC ResultSet 对象配套使用的第三方软件工具也可以方便地用于 rowset。

从以下版本开始:
1.4

字段摘要
 
从接口 java.sql.ResultSet 继承的字段
CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE
 
方法摘要
 void addRowSetListener(RowSetListener listener)
          注册给定侦听器,以便此 RowSet 对象上发生事件时将得到通知。
 void clearParameters()
          清除为此 RowSet 对象命令设置的参数。
 void execute()
          使用数据填充此 RowSet 对象。
 String getCommand()
          获取此 RowSet 对象的命令属性。
 String getDataSourceName()
          获取标识此 RowSet 对象的数据源的逻辑名称。
 boolean getEscapeProcessing()
          获取是否为此 RowSet 对象启用转义处理。
 int getMaxFieldSize()
          获取可以对某些列值返回的最大字节数。
 int getMaxRows()
          获取此 RowSet 对象可以包含的最大行数。
 String getPassword()
          获取用于创建数据库连接的密码。
 int getQueryTimeout()
          获取驱动程序等待语句执行的最大秒数。
 int getTransactionIsolation()
          获取为此 RowSet 对象设置的事务隔离级别。
 Map<String,Class<?>> getTypeMap()
          获取与此 RowSet 对象关联的 Map 对象,该对象指定 SQL 用户定义类型的自定义映射关系(如果有)。
 String getUrl()
          如果此 RowSet 对象使用 DriverManager 而非 DataSource 对象建立连接,则获取创建连接时将使用的 url 属性。
 String getUsername()
          获取用于创建此 RowSet 对象的数据库连接的用户名。
 boolean isReadOnly()
          获取此 RowSet 对象是否是只读的。
 void removeRowSetListener(RowSetListener listener)
          从在此 RowSet 对象上发生事件时得到通知的组件所组成的列表中移除指定的侦听器。
 void setArray(int i, Array x)
          使用给定 Array 值设置此 RowSet 对象命令中的指定参数。
 void setAsciiStream(int parameterIndex, InputStream x)
          将此 RowSet 对象命令中的指定参数设置为给定输入流。
 void setAsciiStream(int parameterIndex, InputStream x, int length)
          将此 RowSet 对象命令中的指定参数设置为给定的 java.io.InputStream 值。
 void setAsciiStream(String parameterName, InputStream x)
          将指定参数设置为给定输入流。
 void setAsciiStream(String parameterName, InputStream x, int length)
          将指定参数设置为给定输入流,该输入流将拥有指定字节数。
 void setBigDecimal(int parameterIndex, BigDecimal x)
          将此 RowSet 对象命令中的指定参数设置为给定的 java.math.BigDeciaml 值。
 void setBigDecimal(String parameterName, BigDecimal x)
          将指定参数设置为给定的 java.math.BigDecimal 值。
 void setBinaryStream(int parameterIndex, InputStream x)
          将此 RowSet 对象命令中的指定参数设置为给定输入流。
 void setBinaryStream(int parameterIndex, InputStream x, int length)
          将此 RowSet 对象命令中的指定参数设置为给定的 java.io.InputStream 值。
 void setBinaryStream(String parameterName, InputStream x)
          将指定参数设置为给定输入流。
 void setBinaryStream(String parameterName, InputStream x, int length)
          将指定参数设置为给定输入流,该输入流将拥有给定字节数。
 void setBlob(int i, Blob x)
          使用给定 Blob 值设置此 RowSet 对象命令中的指定参数。
 void setBlob(int parameterIndex, InputStream inputStream)
          将指定参数设置为 InputStream 对象。
 void setBlob(int parameterIndex, InputStream inputStream, long length)
          将指定参数设置为 InputStream 对象。
 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(int parameterIndex, boolean x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java boolean 值。
 void setBoolean(String parameterName, boolean x)
          将指定参数设置为给定的 Java boolean 值。
 void setByte(int parameterIndex, byte x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java byte 值。
 void setByte(String parameterName, byte x)
          将指定参数设置为给定的 Java byte 值。
 void setBytes(int parameterIndex, byte[] x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java byte 值数组。
 void setBytes(String parameterName, byte[] x)
          将指定参数设置为给定的 Java byte 数组。
 void setCharacterStream(int parameterIndex, Reader reader)
          将此 RowSet 对象命令中的指定参数设置为给定 Reader 对象。
 void setCharacterStream(int parameterIndex, Reader reader, int length)
          将此 RowSet 对象命令中的指定参数设置为给定的 java.io.Reader 值。
 void setCharacterStream(String parameterName, Reader reader)
          将指定参数设置为给定 Reader 对象。
 void setCharacterStream(String parameterName, Reader reader, int length)
          将指定参数设置为给定 Reader 对象,该对象是给定的字符长度数目。
 void setClob(int i, Clob x)
          使用给定 Clob 值设置此 RowSet 对象命令中的指定参数。
 void setClob(int parameterIndex, Reader reader)
          将指定参数设置为 Reader 对象。
 void setClob(int parameterIndex, 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 setCommand(String cmd)
          将此 RowSet 对象的命令属性设置为给定的 SQL 查询。
 void setConcurrency(int concurrency)
          将此 RowSet 对象的并发性设置为给定的并发级别。
 void setDataSourceName(String name)
          将此 RowSet 对象的数据源名称属性设置为给定的 String
 void setDate(int parameterIndex, Date x)
          将此 RowSet 对象命令中的指定参数设置为给定的 java.sql.Date 值。
 void setDate(int parameterIndex, Date x, Calendar cal)
          使用给定 java.sql.Date 值设置此 RowSet 对象命令中的指定参数。
 void setDate(String parameterName, Date x)
          使用运行应用程序的虚拟机所在的默认时区将指定参数设置为给定的 java.sql.Date 值。
 void setDate(String parameterName, Date x, Calendar cal)
          使用给定 Calendar 对象将指定参数设置为给定的 java.sql.Date 值。
 void setDouble(int parameterIndex, double x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java double 值。
 void setDouble(String parameterName, double x)
          将指定参数设置为给定的 Java double 值。
 void setEscapeProcessing(boolean enable)
          将此 RowSet 对象的转义处理设置为开或关。
 void setFloat(int parameterIndex, float x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java float 值。
 void setFloat(String parameterName, float x)
          将指定参数设置为给定的 Java float 值。
 void setInt(int parameterIndex, int x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java int 值。
 void setInt(String parameterName, int x)
          将指定参数设置为给定的 Java int 值。
 void setLong(int parameterIndex, long x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java long 值。
 void setLong(String parameterName, long x)
          将指定参数设置为给定的 Java long 值。
 void setMaxFieldSize(int max)
          将可以对列值返回的最大字节数设置为给定的字节数。
 void setMaxRows(int max)
          将此 RowSet 对象可以包含的最大行数设置为指定数。
 void setNCharacterStream(int parameterIndex, Reader value)
          将此 RowSet 对象命令中的指定参数设置为 Reader 对象。
 void setNCharacterStream(int parameterIndex, Reader value, long length)
          将指定参数设置为 Reader 对象。
 void setNCharacterStream(String parameterName, Reader value)
          将指定参数设置为 Reader 对象。
 void setNCharacterStream(String parameterName, Reader value, long length)
          将指定参数设置为 Reader 对象。
 void setNClob(int parameterIndex, NClob value)
          将指定参数设置为 java.sql.NClob 对象。
 void setNClob(int parameterIndex, Reader reader)
          将指定参数设置为 Reader 对象。
 void setNClob(int parameterIndex, Reader reader, long length)
          将指定参数设置为 Reader 对象。
 void 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(int parameterIndex, String value)
          将指定参数设置为给定的 String 对象。
 void setNString(String parameterName, String value)
          将指定参数设置为给定的 String 对象。
 void setNull(int parameterIndex, int sqlType)
          将此 RowSet 对象的 SQL 命令中的指定参数设置为 SQL NULL
 void setNull(int paramIndex, int sqlType, String typeName)
          将此 RowSet 对象的 SQL 命令中的指定参数设置为 SQL NULL
 void setNull(String parameterName, int sqlType)
          将指定参数设置为 SQL NULL
 void setNull(String parameterName, int sqlType, String typeName)
          将指定参数设置为 SQL NULL
 void setObject(int parameterIndex, Object x)
          使用 Java Object 设置此 RowSet 对象命令中的指定参数。
 void setObject(int parameterIndex, Object x, int targetSqlType)
          使用 Java Object 设置此 RowSet 对象命令中的指定参数。
 void setObject(int parameterIndex, Object x, int targetSqlType, int scaleOrLength)
          使用给定 Java Object 设置此 RowSet 对象命令中的指定参数。
 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 setPassword(String password)
          将此 RowSet 对象的数据库密码设置为给定的 String
 void setQueryTimeout(int seconds)
          将驱动程序等待语句执行的最大秒数设置为给定的秒数。
 void setReadOnly(boolean value)
          将此 RowSet 对象的只读性设置为给定的 boolean 值。
 void setRef(int i, Ref x)
          使用给定 Ref 值设置此 RowSet 对象命令中的指定参数。
 void setRowId(int parameterIndex, RowId x)
          将指定参数设置为给定的 java.sql.RowId 对象。
 void setRowId(String parameterName, RowId x)
          将指定参数设置为给定的 java.sql.RowId 对象。
 void setShort(int parameterIndex, short x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java short 值。
 void setShort(String parameterName, short x)
          将指定参数设置为给定的 Java short 值。
 void setSQLXML(int parameterIndex, SQLXML xmlObject)
          将指定参数设置为给定 java.sql.SQLXML 对象。
 void setSQLXML(String parameterName, SQLXML xmlObject)
          将指定参数设置为给定的 java.sql.SQLXML 对象。
 void setString(int parameterIndex, String x)
          将此 RowSet 对象命令中的指定参数设置为给定的 Java String 值。
 void setString(String parameterName, String x)
          将指定参数设置为给定的 Java String 值。
 void setTime(int parameterIndex, Time x)
          将此 RowSet 对象命令中的指定参数设置为给定的 java.sql.Time 值。
 void setTime(int parameterIndex, Time x, Calendar cal)
          使用给定 java.sql.Time 值设置此 RowSet 对象命令中的指定参数。
 void setTime(String parameterName, Time x)
          将指定参数设置为给定的 java.sql.Time 值。
 void setTime(String parameterName, Time x, Calendar cal)
          使用给定 Calendar 对象将指定参数设置为给定的 java.sql.Time 值。
 void setTimestamp(int parameterIndex, Timestamp x)
          将此 RowSet 对象命令中的指定参数设置为给定的 java.sql.Timestamp 值。
 void setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
          使用给定 java.sql.Timestamp 值设置此 RowSet 对象命令中的指定参数。
 void setTimestamp(String parameterName, Timestamp x)
          将指定参数设置为给定的 java.sql.Timestamp 值。
 void setTimestamp(String parameterName, Timestamp x, Calendar cal)
          使用给定 Calendar 对象将指定参数设置为给定的 java.sql.Timestamp 值。
 void setTransactionIsolation(int level)
          设置此 RowSet 对象的事务隔离级别。
 void setType(int type)
          将此 RowSet 对象的类型设置为给定的类型。
 void setTypeMap(Map<String,Class<?>> map)
          将给定 java.util.Map 对象安装为此 RowSet 对象的默认类型映射表。
 void setURL(int parameterIndex, URL x)
          将指定参数设置为给定的 java.net.URL 值。
 void setUrl(String url)
          设置此 RowSet 对象在使用 DriverManager 创建连接时将使用的 URL。
 void setUsername(String name)
          将此 RowSet 对象的用户名属性设置为给定的 String
 
从接口 java.sql.ResultSet 继承的方法
absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, close, deleteRow, findColumn, first, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFetchSize, getFloat, getFloat, getHoldability, getInt, getInt, getLong, getLong, getMetaData, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getRef, getRef, getRow, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getStatement, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isAfterLast, isBeforeFirst, isClosed, isFirst, isLast, last, moveToCurrentRow, moveToInsertRow, next, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setFetchSize, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp, wasNull
 
从接口 java.sql.Wrapper 继承的方法
isWrapperFor, unwrap
 

方法详细信息

getUrl

String getUrl()
              throws SQLException
如果此 RowSet 对象使用 DriverManager 而非 DataSource 对象建立连接,则获取创建连接时将使用的 url 属性。默认值为 null

返回:
字符串 url
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
setUrl(java.lang.String)

setUrl

void setUrl(String url)
            throws SQLException
设置此 RowSet 对象在使用 DriverManager 创建连接时将使用的 URL。 设置此属性是可选的。如果使用 URL,则在使用 rowset 连接到数据库之前,必须加载接受 URL 的 JDBC 驱动程序。在读取或写入数据时,rowset 将在内部使用 URL 创建数据库连接。创建连接时可能使用 URL,也可能使用数据源名称,具体取决于最近一次设置为非 null 值的是哪一个。

参数:
url - 字符串值;可以为 null
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getUrl()

getDataSourceName

String getDataSourceName()
获取标识此 RowSet 对象的数据源的逻辑名称。

返回:
数据源名称
另请参见:
setDataSourceName(java.lang.String), setUrl(java.lang.String)

setDataSourceName

void setDataSourceName(String name)
                       throws SQLException
将此 RowSet 对象的数据源名称属性设置为给定的 String

可以使用数据源名称属性的值来查找已经在命名服务中注册的 DataSource 对象。完成检索后,可以使用 DataSource 对象创建到它所表示的数据源的连接。

参数:
name - 此 RowSet 对象数据源的逻辑名称;可以为 null
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getDataSourceName()

getUsername

String getUsername()
获取用于创建此 RowSet 对象的数据库连接的用户名。用户名属性是在调用 execute 方法前在运行时设置的。它通常不是 RowSet 对象的序列化状态的一部分。

返回:
用户名属性
另请参见:
setUsername(java.lang.String)

setUsername

void setUsername(String name)
                 throws SQLException
将此 RowSet 对象的用户名属性设置为给定的 String

参数:
name - 用户名
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getUsername()

getPassword

String getPassword()
获取用于创建数据库连接的密码。密码属性是在调用 execute 方法前在运行时设置的。它通常不是 RowSet 对象的序列化状态的一部分。

返回:
用于创建数据库连接的密码
另请参见:
setPassword(java.lang.String)

setPassword

void setPassword(String password)
                 throws SQLException
将此 RowSet 对象的数据库密码设置为给定的 String

参数:
password - 密码字符串
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getPassword()

getTransactionIsolation

int getTransactionIsolation()
获取为此 RowSet 对象设置的事务隔离级别。

返回:
事务隔离级别; Connection.TRANSACTION_READ_UNCOMMITTEDConnection.TRANSACTION_READ_COMMITTEDConnection.TRANSACTION_REPEATABLE_READConnection.TRANSACTION_SERIALIZABLE 之一
另请参见:
setTransactionIsolation(int)

setTransactionIsolation

void setTransactionIsolation(int level)
                             throws SQLException
设置此 RowSet 对象的事务隔离级别。

参数:
level - 事务隔离级别; Connection.TRANSACTION_READ_UNCOMMITTEDConnection.TRANSACTION_READ_COMMITTEDConnection.TRANSACTION_REPEATABLE_READConnection.TRANSACTION_SERIALIZABLE 之一
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getTransactionIsolation()

getTypeMap

Map<String,Class<?>> getTypeMap()
                                throws SQLException
获取与此 RowSet 对象关联的 Map 对象,该对象指定 SQL 用户定义类型的自定义映射关系(如果有)。默认类型映射为空。

返回:
一个 java.util.Map 对象,该对象包含 SQL 用户定义类型的名称及其映射到的 Java 类
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
setTypeMap(java.util.Map >)

setTypeMap

void setTypeMap(Map<String,Class<?>> map)
                throws SQLException
将给定 java.util.Map 对象安装为此 RowSet 对象的默认类型映射表。在通过方法参数提供另一个类型映射表之前,将一直使用此类型映射表。

参数:
map - 一个 java.util.Map 对象,该对象包含 SQL 用户定义类型的名称及其映射到的 Java 类
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getTypeMap()

getCommand

String getCommand()
获取此 RowSet 对象的命令属性。 命令属性包含命令字符串,该字符串必须为 SQL 查询,执行该查询可以使用数据填充 rowset。默认值为 null

返回:
命令字符串;可以为 null
另请参见:
setCommand(java.lang.String)

setCommand

void setCommand(String cmd)
                throws SQLException
将此 RowSet 对象的命令属性设置为给定的 SQL 查询。 当 rowset 从不支持命令的数据源(如电子表格)获取数据时,此属性是可选的。

参数:
cmd - 将用于为此 RowSet 对象获取数据的 SQL 查询;可以为 null
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getCommand()

isReadOnly

boolean isReadOnly()
获取此 RowSet 对象是否是只读的。如果能够进行更新,则默认 rowset 为可更新。

试图更新只读 rowset 将导致抛出 SQLException

返回:
如果此 RowSet 对象是只读的,则返回 true;如果它是可更新的,则返回 false
另请参见:
setReadOnly(boolean)

setReadOnly

void setReadOnly(boolean value)
                 throws SQLException
将此 RowSet 对象的只读性设置为给定的 boolean 值。

参数:
value - 如果只读,则该值为 true;如果可更新,则为 false
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
isReadOnly()

getMaxFieldSize

int getMaxFieldSize()
                    throws SQLException
获取可以对某些列值返回的最大字节数。此限制仅应用于 BINARYVARBINARYLONGVARBINARYBINARYCHARVARCHARLONGVARCHARNCHARNVARCHAR 列。如果超过了该限制,则默认丢弃多出的数据。

返回:
当前最大列大小限制;零表示不存在任何限制
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
setMaxFieldSize(int)

setMaxFieldSize

void setMaxFieldSize(int max)
                     throws SQLException
将可以对列值返回的最大字节数设置为给定的字节数。此限制仅应用于 BINARYVARBINARYLONGVARBINARYBINARYCHARVARCHARLONGVARCHARNCHARNVARCHAR 列。如果超过了该限制,则默认丢弃多出的数据。为了获得最大的可移植性,应该使用大于 256 的值。

参数:
max - 以字节为单位的新最大列大小限制;零表示没有任何限制
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getMaxFieldSize()

getMaxRows

int getMaxRows()
               throws SQLException
获取此 RowSet 对象可以包含的最大行数。如果超过了该限制,则正常撤消多出的行。

返回:
RowSet 对象可以包含的当前最大行数;零表示不存在任何限制
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
setMaxRows(int)

setMaxRows

void setMaxRows(int max)
                throws SQLException
将此 RowSet 对象可以包含的最大行数设置为指定数。如果超过了该限制,则正常撤消多出的行。

参数:
max - 新最大行数;零表示没有任何限制
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getMaxRows()

getEscapeProcessing

boolean getEscapeProcessing()
                            throws SQLException
获取是否为此 RowSet 对象启用转义处理。如果启用转义扫描(默认值),则驱动程序在将 SQL 语句发送到数据库之前将执行转义替换。

返回:
如果启用转义处理,则返回 true;如果禁用,则返回 false
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
setEscapeProcessing(boolean)

setEscapeProcessing

void setEscapeProcessing(boolean enable)
                         throws SQLException
将此 RowSet 对象的转义处理设置为开或关。如果转义扫描为开启(默认值),则驱动程序在将 SQL 语句发送到数据库之前将执行转义替换。

参数:
enable - 为 true 表示启用转义处理;为 false 表示禁用转义处理
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getEscapeProcessing()

getQueryTimeout

int getQueryTimeout()
                    throws SQLException
获取驱动程序等待语句执行的最大秒数。如果超过此限制,则抛出 SQLException

返回:
以秒为单位的当前查询超时限制;零表示不存在任何限制
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
setQueryTimeout(int)

setQueryTimeout

void setQueryTimeout(int seconds)
                     throws SQLException
将驱动程序等待语句执行的最大秒数设置为给定的秒数。如果超过此限制,则抛出 SQLException

参数:
seconds - 以秒为单位的新查询超时限制;零表示不存在任何限制
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
getQueryTimeout()

setType

void setType(int type)
             throws SQLException
将此 RowSet 对象的类型设置为给定的类型。此方法用于更改 rowset 的类型,默认情况下该类型为只读且不可滚动。

参数:
type - 以下指定类型的 ResultSet 常量之一: ResultSet.TYPE_FORWARD_ONLYResultSet.TYPE_SCROLL_INSENSITIVEResultSet.TYPE_SCROLL_SENSITIVE
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
ResultSet.getType()

setConcurrency

void setConcurrency(int concurrency)
                    throws SQLException
将此 RowSet 对象的并发性设置为给定的并发级别。此方法用于更改 rowset 的并发级别,默认情况下为 ResultSet.CONCUR_READ_ONLY

参数:
concurrency - 以下指定并发级别的 ResultSet 常量之一: ResultSet.CONCUR_READ_ONLYResultSet.CONCUR_UPDATABLE
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
ResultSet.getConcurrency()

setNull

void setNull(int parameterIndex,
             int sqlType)
             throws SQLException
将此 RowSet 对象的 SQL 命令中的指定参数设置为 SQL NULL

注: 必须指定参数的 SQL 类型。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
sqlType - 由 java.sql.Types 定义的 SQL 类型代码
抛出:
SQLException - 如果发生数据库访问错误

setNull

void setNull(String parameterName,
             int sqlType)
             throws SQLException
将指定参数设置为 SQL NULL

注: 必须指定该参数的 SQL 类型。

参数:
parameterName - 参数的名称
sqlType - java.sql.Types 中定义的 SQL 类型代码
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4

setNull

void setNull(int paramIndex,
             int sqlType,
             String typeName)
             throws SQLException
将此 RowSet 对象的 SQL 命令中的指定参数设置为 SQL NULL。这种 setNull 方法应该用于 SQL 用户定义的类型 (UDT) 和 REF 类型参数。UDT 的例子包括: STRUCTDISTINCTJAVA_OBJECT 和指定数组类型。

注: 为了便于移植,在指定 NULL UDT 或 REF 参数时,应用程序必须提供 SQL 类型代码和全限定 SQL 类型名称。对于 UDT 参数,名称是参数本身的类型名称。对于 REF 参数,名称是所引用类型的类型名称。如果 JDBC 驱动程序不需要类型代码或类型名称信息,那么它可以忽略此信息。 尽管此方法适合 UDT 和 REF 参数使用,但可以使用此方法来设置任意 JDBC 类型的 null 参数。如果该参数没有用户定义的类型或 REF 类型,则忽略 typeName 参数。

参数:
paramIndex - 第一个参数是 1,第二个参数是 2 ……
sqlType - 取自 java.sql.Types 的值
typeName - SQL UDT 的完全限定名或 REF 类型引用的 SQL 结构化类型的名称;如果不是 UDT 或 REF 类型,则忽略该参数
抛出:
SQLException - 如果发生数据库访问错误

setNull

void setNull(String parameterName,
             int sqlType,
             String typeName)
             throws SQLException
将指定参数设置为 SQL NULL。这种 setNull 方法应该用于用户定义类型和 REF 类型参数。用户定义类型的示例有:STRUCT、DISTINCT、JAVA_OBJECT 和指定数组类型。

注: 为了便于移植,在指定 NULL 用户定义参数或 REF 参数时,应用程序必须提供 SQL 类型代码和完全限定的 SQL 类型名称。 在用户定义类型的情况下,名称是参数本身的类型名称。对于 REF 参数,名称是所引用类型的类型名称。如果 JDBC 驱动程序不需要类型代码或类型名称信息,那么它可以忽略这些信息。 尽管此方法供用户定义参数和 Ref 参数使用,但也可以使用它设置任何 JDBC 类型的 null 参数。如果该参数不具有用户定义类型或 REF 类型,则忽略给定 typeName。

参数:
parameterName - 参数的名称
sqlType - 取自 java.sql.Types 的值
typeName - SQL 用户定义类型的完全限定名称;如果该参数不是用户定义类型或 SQL REF 值,则忽略它
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4

setBoolean

void setBoolean(int parameterIndex,
                boolean x)
                throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java boolean 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL BIT 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setBoolean

void setBoolean(String parameterName,
                boolean x)
                throws SQLException
将指定参数设置为给定的 Java boolean 值。在将此值发送到数据库时,驱动程序将其转换为 SQL BITBOOLEAN 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getBoolean(int)

setByte

void setByte(int parameterIndex,
             byte x)
             throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java byte 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL TINYINT 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setByte

void setByte(String parameterName,
             byte x)
             throws SQLException
将指定参数设置为给定的 Java byte 值。在将此值发送到数据库时,驱动程序将其转换为 SQL TINYINT 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getByte(int)

setShort

void setShort(int parameterIndex,
              short x)
              throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java short 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL SMALLINT 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setShort

void setShort(String parameterName,
              short x)
              throws SQLException
将指定参数设置为给定的 Java short 值。在将此值发送到数据库时,驱动程序将其转换为 SQL SMALLINT 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getShort(int)

setInt

void setInt(int parameterIndex,
            int x)
            throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java int 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL INTEGER 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setInt

void setInt(String parameterName,
            int x)
            throws SQLException
将指定参数设置为给定的 Java int 值。在将此值发送到数据库时,驱动程序将其转换为 SQL INTEGER 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getInt(int)

setLong

void setLong(int parameterIndex,
             long x)
             throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java long 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL BIGINT 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setLong

void setLong(String parameterName,
             long x)
             throws SQLException
将指定参数设置为给定的 Java long 值。在将此值发送到数据库时,驱动程序将其转换为 SQL BIGINT 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getLong(int)

setFloat

void setFloat(int parameterIndex,
              float x)
              throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java float 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL REAL 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setFloat

void setFloat(String parameterName,
              float x)
              throws SQLException
将指定参数设置为给定的 Java float 值。在将此值发送到数据库时,驱动程序将其转换为 SQL FLOAT 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getFloat(int)

setDouble

void setDouble(int parameterIndex,
               double x)
               throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java double 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL DOUBLE 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setDouble

void setDouble(String parameterName,
               double x)
               throws SQLException
将指定参数设置为给定的 Java double 值。在将此值发送到数据库时,驱动程序将其转换为 SQL DOUBLE 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getDouble(int)

setBigDecimal

void setBigDecimal(int parameterIndex,
                   BigDecimal x)
                   throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 java.math.BigDeciaml 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL NUMERIC 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setBigDecimal

void setBigDecimal(String parameterName,
                   BigDecimal x)
                   throws SQLException
将指定参数设置为给定的 java.math.BigDecimal 值。在将此值发送到数据库时,驱动程序将其转换为 SQL NUMERIC 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getBigDecimal(int, int)

setString

void setString(int parameterIndex,
               String x)
               throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java String 值。在将此值发送给数据库之前,驱动程序将其转换为 SQL VARCHARLONGVARCHAR 值,具体取决于该参数相对于驱动程序在 VARCHAR 值上的限制的大小。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setString

void setString(String parameterName,
               String x)
               throws SQLException
将指定参数设置为给定的 Java String 值。在将此值发送到数据库时,驱动程序将其转换为 SQL VARCHARLONGVARCHAR 值(具体取决于该参数相对于驱动程序在 VARCHAR 值上的限制的大小)。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getString(int)

setBytes

void setBytes(int parameterIndex,
              byte[] x)
              throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 Java byte 值数组。在将此值发送给数据库之前,驱动程序将其转换为 SQL VARBINARYLONGVARBINARY 值,具体取决于该参数相对于驱动程序在 VARBINARY 值上的限制的大小。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setBytes

void setBytes(String parameterName,
              byte[] x)
              throws SQLException
将指定参数设置为给定的 Java byte 数组。在将此值发送到数据库时,驱动程序将其转换为 SQL VARBINARYLONGVARBINARY 值(具体取决于该参数相对于驱动程序在 VARBINARY 值上的限制的大小)。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getBytes(int)

setDate

void setDate(int parameterIndex,
             Date x)
             throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 java.sql.Date 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL DATE 值,使用默认的 java.util.Calendar 来计算日期。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setTime

void setTime(int parameterIndex,
             Time x)
             throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 java.sql.Time 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL TIME 值,使用默认的 java.util.Calendar 来计算该值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setTimestamp

void setTimestamp(int parameterIndex,
                  Timestamp x)
                  throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 java.sql.Timestamp 值。在将此值发送到数据库之前,驱动程序将其转换为 SQL TIMESTAMP 值,使用默认的 java.util.Calendar 来计算该值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误

setTimestamp

void setTimestamp(String parameterName,
                  Timestamp x)
                  throws SQLException
将指定参数设置为给定的 java.sql.Timestamp 值。在将此值发送到数据库时,驱动程序将其转换为 SQL TIMESTAMP 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getTimestamp(int)

setAsciiStream

void setAsciiStream(int parameterIndex,
                    InputStream x,
                    int length)
                    throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 java.io.InputStream 值。更实际的做法是,通过 java.io.InputStream 而不是 LONGVARCHAR 参数来发送很大的 ASCII 值。在到达文件末尾之前,驱动程序将根据需要从该流读取数据。

注:此流对象既可以是一个标准 Java 流对象,也可以是用户定义的实现标准接口的子类。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 包含 ASCII 参数值的 Java 输入流
length - 流中的字节数
抛出:
SQLException - 如果发生数据库访问错误

setAsciiStream

void setAsciiStream(String parameterName,
                    InputStream x,
                    int length)
                    throws SQLException
将指定参数设置为给定输入流,该输入流将拥有指定字节数。在将一个非常大的 ASCII 值输入到 LONGVARCHAR 参数时,通过 java.io.InputStream 发送可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。 JDBC 驱动程序将执行从 ASCII 到数据库 char 格式的任何必要转换。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

参数:
parameterName - 参数的名称
x - 包含 ASCII 参数值的 Java 输入流
length - 流中的字节数
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4

setBinaryStream

void setBinaryStream(int parameterIndex,
                     InputStream x,
                     int length)
                     throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 java.io.InputStream 值。更实际的做法是,通过 java.io.InputStream 而不是 LONGVARBINARY 参数来发送很大的二进制值。在到达文件末尾之前,驱动程序将根据需要从该流读取数据。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 包含二进制参数值的 Java 输入流
length - 流中的字节数
抛出:
SQLException - 如果发生数据库访问错误

setBinaryStream

void setBinaryStream(String parameterName,
                     InputStream x,
                     int length)
                     throws SQLException
将指定参数设置为给定输入流,该输入流将拥有给定字节数。在将一个非常大的二进制值输入到 LONGVARBINARY 参数时,通过 java.io.InputStream 对象发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

参数:
parameterName - 参数的名称
x - 包含二进制参数值的 java 输入流
length - 流中的字节数
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4

setCharacterStream

void setCharacterStream(int parameterIndex,
                        Reader reader,
                        int length)
                        throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定的 java.io.Reader 值。更实际的做法是,通过 java.io.Reader 而不是 LONGVARCHAR 参数来发送很大的 UNICODE 值。在到达文件末尾之前,驱动程序将根据需要从该流读取数据。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
reader - 包含要设置的 UNICODE 数据的 Reader 对象
length - 流中的字符数
抛出:
SQLException - 如果发生数据库访问错误

setCharacterStream

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 - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4

setAsciiStream

void setAsciiStream(int parameterIndex,
                    InputStream x)
                    throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定输入流。在将一个非常大的 ASCII 值输入到 LONGVARCHAR 参数时,通过 java.io.InputStream 发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。 JDBC 驱动程序将执行从 ASCII 到数据库 char 格式的任何必要转换。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

注: 请参考 JDBC 驱动程序文档确定使用带长度参数的 setAsciiStream 是否更有效。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 包含 ASCII 参数值的 Java 输入流
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 PreparedStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setAsciiStream

void setAsciiStream(String parameterName,
                    InputStream x)
                    throws SQLException
将指定参数设置为给定输入流。在将一个非常大的 ASCII 值输入到 LONGVARCHAR 参数时,通过 java.io.InputStream 发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。JDBC 驱动程序将执行从 ASCII 到数据库 char 格式的任何必要转换。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setAsciiStream 是否更有效。

参数:
parameterName - 参数的名称
x - 包含 ASCII 参数值的 Java 输入流
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setBinaryStream

void setBinaryStream(int parameterIndex,
                     InputStream x)
                     throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定输入流。在将一个非常大的二进制值输入到 LONGVARBINARY 参数时,通过 java.io.InputStream 对象发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setBinaryStream 是否更有效。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 包含二进制参数值的 Java 输入流
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 PreparedStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setBinaryStream

void setBinaryStream(String parameterName,
                     InputStream x)
                     throws SQLException
将指定参数设置为给定输入流。在将一个非常大的二进制值输入到 LONGVARBINARY 参数时,通过 java.io.InputStream 对象发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setBinaryStream 是否更有效。

参数:
parameterName - 参数的名称
x - 包含二进制参数值的 Java 输入流
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setCharacterStream

void setCharacterStream(int parameterIndex,
                        Reader reader)
                        throws SQLException
将此 RowSet 对象命令中的指定参数设置为给定 Reader 对象。在将一个非常大的 UNICODE 值输入到 LONGVARCHAR 参数时,通过 java.io.Reader 对象发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。 JDBC 驱动程序将执行从 UNICODE 到数据库 char 格式的任何必要转换。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setCharacterStream 是否更有效。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
reader - 包含 Unicode 数据的 java.io.Reader 对象
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 PreparedStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setCharacterStream

void setCharacterStream(String parameterName,
                        Reader reader)
                        throws SQLException
将指定参数设置为给定 Reader 对象。在将一个非常大的 UNICODE 值输入到 LONGVARCHAR 参数时,通过 java.io.Reader 对象发送它可能更为实际。将根据需要从流中读取数据,一直读取到文件末尾。JDBC 驱动程序将执行从 UNICODE 到数据库 char 格式的任何必要转换。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setCharacterStream 是否更有效。

参数:
parameterName - 参数的名称
reader - 包含 Unicode 数据的 java.io.Reader 对象
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setNCharacterStream

void setNCharacterStream(int parameterIndex,
                         Reader value)
                         throws SQLException
将此 RowSet 对象命令中的指定参数设置为 Reader 对象。 Reader 读取数据,一直读取到文件末尾。驱动程序将执行从 Java 字符格式到数据库中国家字符集 (national character set) 的必要转换。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setNCharacterStream 是否更有效。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
value - 参数值
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误;如果在关闭的 PreparedStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setObject

void setObject(int parameterIndex,
               Object x,
               int targetSqlType,
               int scaleOrLength)
               throws SQLException
使用给定 Java Object 设置此 RowSet 对象命令中的指定参数。对于整数值,应该使用 java.lang 等效对象(例如,对于 int,应使用 Integer 类的实例)。 如果第二个参数是 InputStream,则该流必须包含 scaleOrLength 所指定的字节数。如果第二个参数是 Reader,则该 reader 必须包含 scaleOrLength 所指定的字符数。如果这些条件都不为 true,则驱动程序在执行准备好的语句时将会生成 SQLException

在发送到数据库之前,给定 Java 对象将被转换为 targetSqlType。

如果对象是实现 SQLData 的类,则 rowset 应该调用 SQLData.writeSQL 方法将对象写入 SQLOutput 数据流中。另一方面,如果对象是实现 RefBlobClobNClobStructjava.net.URLArray 的类,则驱动程序应该将其作为相应 SQL 类型的值传递给数据库。

注意,此方法可用于传递特定于数据库的抽象数据类型。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 包含输入参数值的对象
targetSqlType - 将发送给数据库的 SQL 类型(定义于 java.sql.Types 中)。scale 参数可以进一步限定此类型。
scaleOrLength - 对于 java.sql.Types.DECIMALjava.sql.Types.NUMERIC 类型,该值是小数点后的位数。对于 Java Object 类型 InputStreamReader,该值是流或 reader 中数据的长度。对于所有其他类型,将忽略此值。
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
Types

setObject

void setObject(String parameterName,
               Object x,
               int targetSqlType,
               int scale)
               throws SQLException
使用给定对象设置指定参数的值。第二个参数必须是一个对象类型;对于整数值,应该使用 java.lang 的等效对象。

在发送到数据库之前,给定 Java 对象将被转换为给定的 targetSqlType。 如果对象具有自定义映射关系(属于实现 SQLData 接口的类),则 JDBC 驱动程序应该调用 SQLData.writeSQL 方法将它写入 SQL 数据流中。另一方面,如果对象是实现 RefBlobClobNClobStructjava.net.URLArray 的类,则驱动程序应该将其作为相应 SQL 类型的值传递给数据库。

注意,此方法可用于传递特定于数据库的抽象数据类型。

参数:
parameterName - 参数的名称
x - 包含输入参数值的对象
targetSqlType - 将发送给数据库的 SQL 类型(在 java.sql.Types 中定义)。scale 参数可以进一步限定此类型。
scale - 对于 java.sql.Types.DECIMAL 或 java.sql.Types.NUMERIC 类型,该值是小数点后的位数。对于所有其他类型,将忽略此值。
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 targetSqlTypeARRAYBLOBCLOBDATALINKJAVA_OBJECTNCHARNCLOBNVARCHARLONGNVARCHARREFROWIDSQLXMLSTRUCT 数据类型并且 JDBC 驱动程序不支持此数据类型
从以下版本开始:
1.4
另请参见:
Types, ResultSet.getObject(int)

setObject

void setObject(int parameterIndex,
               Object x,
               int targetSqlType)
               throws SQLException
使用 Java Object 设置此 RowSet 对象命令中的指定参数。对于整数值,应该使用 java.lang 等效对象。此方法与上述 setObject 类似,但使用的 scale 是第二个参数的 scale。标量值的 scale 为零。字面值的 scale 存在于字面中。

尽管支持浮点型输入值,但不建立使用该类型值调用此方法。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 包含输入参数值的对象
targetSqlType - 将发送给数据库的 SQL 类型(定义于 java.sql.Types 中)
抛出:
SQLException - 如果发生数据库访问错误

setObject

void setObject(String parameterName,
               Object x,
               int targetSqlType)
               throws SQLException
使用给定对象设置指定参数的值。此方法类似于上面的 setObject 方法,不同之处在于它假定 scale 为 0。

参数:
parameterName - 参数的名称
x - 包含输入参数值的对象
targetSqlType - 将发送给数据库的 SQL 类型(在 java.sql.Types 中定义)
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 targetSqlTypeARRAYBLOBCLOBDATALINKJAVA_OBJECTNCHARNCLOBNVARCHARLONGNVARCHARREFROWIDSQLXMLSTRUCT 数据类型并且 JDBC 驱动程序不支持此数据类型
从以下版本开始:
1.4
另请参见:
ResultSet.getObject(int)

setObject

void setObject(String parameterName,
               Object x)
               throws SQLException
使用给定对象设置指定参数的值。第二个参数必须是 Object 类型;所以,应该对内置类型使用 java.lang 的等效对象。

JDBC 规范指定一个从 Java Object 类型到 SQL 类型的标准映射关系。在发送到数据库之前,给定参数将被转换为相应的 SQL 类型。

注意,通过使用特定于驱动程序的 Java 类型,此方法可用于传递特定于数据库的抽象数据类型。 如果对象是实现 SQLData 接口的类,则 JDBC 驱动程序应该调用 SQLData.writeSQL 方法将它写入 SQL 数据流中。另一方面,如果对象是实现 RefBlobClobNClobStructjava.net.URLArray 的类,则驱动程序应该将其作为相应 SQL 类型的值传递给数据库。

如果出现混淆,例如该对象是实现多个上述指定接口的类,则此方法抛出异常。

参数:
parameterName - 参数的名称
x - 包含输入参数值的对象
抛出:
SQLException - 如果发生数据库访问错误,在关闭的 CallableStatement 上调用此方法或者给定 Object 参数不明确
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getObject(int)

setObject

void setObject(int parameterIndex,
               Object x)
               throws SQLException
使用 Java Object 设置此 RowSet 对象命令中的指定参数。对于整数值,应该使用 java.lang 等效对象。

JDBC 规范提供了一个从 Java Object 类型到 SQL 类型的标准映射关系。在将给定 Java 对象发送到数据库之前,驱动程序将其转换为其标准的 SQL 映射关系。

注意,通过使用特定于驱动程序的 Java 类型,此方法可用于传递特定于数据库的抽象数据类型。 如果对象是实现 SQLData 的类,则 rowset 应该调用 SQLData.writeSQL 方法将对象写入 SQLOutput 数据流中。另一方面,如果对象是实现 RefBlobClobNClobStructjava.net.URLArray 的类,则驱动程序应该将其作为相应 SQL 类型的值传递给数据库。

如果出现混淆,例如如果该对象是实现多个这些接口的类,则抛出异常。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 包含输入参数值的对象
抛出:
SQLException - 如果发生数据库访问错误

setRef

void setRef(int i,
            Ref x)
            throws SQLException
使用给定 Ref 值设置此 RowSet 对象命令中的指定参数。驱动程序将此值转换为适当的 REF(<结构化类型>) 值。

参数:
i - 第一个参数是 1,第二个参数是 2 ……
x - 一个对象,它表示 SQL REF 类型的数据
抛出:
SQLException - 如果发生数据库访问错误

setBlob

void setBlob(int i,
             Blob x)
             throws SQLException
使用给定 Blob 值设置此 RowSet 对象命令中的指定参数。在将此值发送到数据库之前,驱动程序会将其转换为 Blob 对象表示的 BLOB 值。

参数:
i - 第一个参数是 1,第二个参数是 2 ……
x - 表示 BLOB 的对象
抛出:
SQLException - 如果发生数据库访问错误

setBlob

void setBlob(int parameterIndex,
             InputStream inputStream,
             long length)
             throws SQLException
将指定参数设置为 InputStream 对象。 inputstream 必须包含 length 所指定的字符数,否则,在执行 PreparedStatement 时将会生成 SQLException。此方法不同于 setBinaryStream (int, InputStream, int) 方法,因为它通知驱动程序参数值应该以 BLOB 的形式发送到服务器。使用 setBinaryStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGVARBINARY 还是 BLOB 的形式发送到服务器

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
inputStream - 包含用来设置参数值的数据的对象。
length - 参数数据中的字节数。
抛出:
SQLException - 如果发生数据库访问错误;如果在关闭的 PreparedStatement 上调用此方法;如果 parameterIndex 不对应 SQL 语句中的参数标记;如果指定长度小于 0 或者 inputstream 中的字节数不匹配指定长度。
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setBlob

void setBlob(int parameterIndex,
             InputStream inputStream)
             throws SQLException
将指定参数设置为 InputStream 对象。此方法不同于 setBinaryStream (int, InputStream) 方法,因为它通知驱动程序参数值应该以 BLOB 的形式发送到服务器。使用 setBinaryStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGVARBINARY 还是 BLOB 的形式发送到服务器

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setBlob 是否更有效。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
inputStream - 包含用来设置参数值的数据的对象。
抛出:
SQLException - 如果发生数据库访问错误,在关闭的 PreparedStatement 上调用此方法或者 parameterIndex 不对应 SQL 语句中的参数标记
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setBlob

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 - 如果 parameterIndex 不对应 SQL 语句中的参数标记,或者指定长度小于 0;如果 inputstream 中的字节数不匹配指定长度;如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setBlob

void setBlob(String parameterName,
             Blob x)
             throws SQLException
将指定参数设置为给定的 java.sql.Blob 对象。在将此值发送到数据库时,驱动程序将其转换为 SQL BLOB 值。

参数:
parameterName - 参数的名称
x - 映射 SQL BLOB 值的 Blob 对象
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setBlob

void setBlob(String parameterName,
             InputStream inputStream)
             throws SQLException
将指定参数设置为 InputStream 对象。此方法不同于 setBinaryStream (int, InputStream) 方法,因为它通知驱动程序参数值应该以 BLOB 的形式发送到服务器。使用 setBinaryStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGVARBINARY 还是 BLOB 的形式发送到服务器。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setBlob 是否更有效。

参数:
parameterName - 参数的名称
inputStream - 包含用来设置参数值的数据的对象。
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setClob

void setClob(int i,
             Clob x)
             throws SQLException
使用给定 Clob 值设置此 RowSet 对象命令中的指定参数。在将此值发送到数据库之前,驱动程序会将其转换为 Clob 对象表示的 CLOB 值。

参数:
i - 第一个参数是 1,第二个参数是 2 ……
x - 表示 CLOB 的对象
抛出:
SQLException - 如果发生数据库访问错误

setClob

void setClob(int parameterIndex,
             Reader reader,
             long length)
             throws SQLException
将指定参数设置为 Reader 对象。reader 必须包含 length 所指定的字符数,否则,在执行 PreparedStatement 时将会生成 SQLException。此方法不同于 setCharacterStream (int, Reader, int) 方法,因为它通知驱动程序参数值应该以 CLOB 的形式发送到服务器。使用 setCharacterStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGVARCHAR 还是 CLOB 的形式发送到服务器。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
reader - 包含用来设置参数值的数据的对象。
length - 参数数据中的字符数。
抛出:
SQLException - 如果发生数据库访问错误,或者在关闭的 PreparedStatement 上调用此方法;如果 parameterIndex 不对应 SQL 语句中的参数标记,或者指定长度小于 0。
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setClob

void setClob(int parameterIndex,
             Reader reader)
             throws SQLException
将指定参数设置为 Reader 对象。此方法不同于 setCharacterStream (int, Reader) 方法,因为它通知驱动程序该参数值应该以 CLOB 的形式发送到服务器。使用 setCharacterStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGVARCHAR 还是 CLOB 的形式发送到服务器。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setClob 是否更有效。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
reader - 包含用来设置参数值的数据的对象。
抛出:
SQLException - 如果发生数据库访问错误,在关闭的 PreparedStatement 上调用此方法或者 parameterIndex 不对应 SQL 语句中的参数标记
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setClob

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 - 如果 parameterIndex 不对应 SQL 语句中的参数标记;如果指定长度小于 0;如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setClob

void setClob(String parameterName,
             Clob x)
             throws SQLException
将指定参数设置为给定的 java.sql.Clob 对象。将此值发送到数据库时,驱动程序将其转换为 SQL CLOB 值。

参数:
parameterName - 参数的名称
x - 映射 SQL CLOB 值的 Clob 对象
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setClob

void setClob(String parameterName,
             Reader reader)
             throws SQLException
将指定参数设置为 Reader 对象。此方法不同于 setCharacterStream (int, Reader) 方法,因为它通知驱动程序该参数值应该以 CLOB 的形式发送到服务器。使用 setCharacterStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGVARCHAR 还是 CLOB 的形式发送到服务器。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setClob 是否更有效。

参数:
parameterName - 参数的名称
reader - 包含用来设置参数值的数据的对象。
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setArray

void setArray(int i,
              Array x)
              throws SQLException
使用给定 Array 值设置此 RowSet 对象命令中的指定参数。在将此值发送到数据库之前,驱动程序会将其转换为 Array 对象表示的 ARRAY 值。

参数:
i - 第一个参数是 1,第二个参数是 2 ……
x - 表示 SQL 数组的对象
抛出:
SQLException - 如果发生数据库访问错误

setDate

void setDate(int parameterIndex,
             Date x,
             Calendar cal)
             throws SQLException
使用给定 java.sql.Date 值设置此 RowSet 对象命令中的指定参数。驱动程序将此值转换为 SQL DATE 值,使用给定 java.util.Calendar 对象来计算日期。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
cal - 用于计算日期的 java.util.Calendar 对象
抛出:
SQLException - 如果发生数据库访问错误

setDate

void setDate(String parameterName,
             Date x)
             throws SQLException
使用运行应用程序的虚拟机所在的默认时区将指定参数设置为给定的 java.sql.Date 值。在将此值发送到数据库时,驱动程序将其转换为 SQL DATE 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getDate(int)

setDate

void setDate(String parameterName,
             Date x,
             Calendar cal)
             throws SQLException
使用给定 Calendar 对象将指定参数设置为给定的 java.sql.Date 值。驱动程序使用 Calendar 对象构造一个 SQL DATE 值,该值随后被驱动程序发送到数据库。利用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算日期。如果没有指定任何 Calendar 对象,则驱动程序使用默认时区,该时区是运行应用程序的虚拟机所在的时区。

参数:
parameterName - 参数的名称
x - 参数值
cal - 驱动程序将用来构造日期的 Calendar 对象
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getDate(int)

setTime

void setTime(int parameterIndex,
             Time x,
             Calendar cal)
             throws SQLException
使用给定 java.sql.Time 值设置此 RowSet 对象命令中的指定参数。在将此值发送到数据库之前,驱动程序将其转换为 SQL TIME 值,使用给定 java.util.Calendar 对象来计算该值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
cal - 用于计算时间的 java.util.Calendar 对象
抛出:
SQLException - 如果发生数据库访问错误

setTime

void setTime(String parameterName,
             Time x)
             throws SQLException
将指定参数设置为给定的 java.sql.Time 值。在将此值发送到数据库时,驱动程序将其转换为 SQL TIME 值。

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getTime(int)

setTime

void setTime(String parameterName,
             Time x,
             Calendar cal)
             throws SQLException
使用给定 Calendar 对象将指定参数设置为给定的 java.sql.Time 值。驱动程序使用 Calendar 对象构造一个 SQL TIME 值,该值随后被驱动程序发送到数据库。利用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算时间。如果没有指定任何 Calendar 对象,则驱动程序使用默认时区,该时区是运行应用程序的虚拟机所在的时区。

参数:
parameterName - 参数的名称
x - 参数值
cal - 驱动程序将用来构造时间的 Calendar 对象
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getTime(int)

setTimestamp

void setTimestamp(int parameterIndex,
                  Timestamp x,
                  Calendar cal)
                  throws SQLException
使用给定 java.sql.Timestamp 值设置此 RowSet 对象命令中的指定参数。在将此值发送到数据库之前,驱动程序将其转换为 SQL TIMESTAMP 值,使用给定 java.util.Calendar 对象来计算该值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
cal - 用于计算时间戳的 java.util.Calendar 对象
抛出:
SQLException - 如果发生数据库访问错误

setTimestamp

void setTimestamp(String parameterName,
                  Timestamp x,
                  Calendar cal)
                  throws SQLException
使用给定 Calendar 对象将指定参数设置为给定的 java.sql.Timestamp 值。驱动程序使用 Calendar 对象构造一个 SQL TIMESTAMP 值,该值随后被驱动程序发送到数据库。利用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算时间戳。如果没有指定任何 Calendar 对象,则驱动程序使用默认时区,该时区是运行应用程序的虚拟机所在的时区。

参数:
parameterName - 参数的名称
x - 参数值
cal - 驱动程序将用来构造时间戳的 Calendar 对象
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4
另请参见:
ResultSet.getTimestamp(int)

clearParameters

void clearParameters()
                     throws SQLException
清除为此 RowSet 对象命令设置的参数。

通常参数值对 RowSet 对象的重复使用仍然有效。设置一个参数值会自动清除其以前的值。不过,在某些情况下,直接释放当前参数值使用的资源也是很有用的;这可以通过调用 clearParameters 方法来实现。

抛出:
SQLException - 如果发生数据库访问错误

execute

void execute()
             throws SQLException
使用数据填充此 RowSet 对象。

execute 方法可以使用以下属性来创建用于读取数据的连接:url、数据源名称、用户名、密码、事务隔离和类型映射表。 execute 方法可以使用以下属性来创建执行命令的语句:命令、只读、最大字段大小、最大行数、转义处理和查询超时值。

如果没有设置必需的参数,则抛出异常。如果此方法执行成功,则丢弃 rowset 的当前内容,同时设置(或重置)rowset 的元数据。如果存在未执行的更新,则忽略它们。

如果此 RowSet 对象不维持与其数据源的连续连接,则它可以使用 reader(RowSetReader 对象)来填充数据。在此情况下,reader 应该已经在此 RowSet 对象中注册,并且 execute 方法将作为其实现的一部分调用 reader 的 readData 方法。

抛出:
SQLException - 如果发生数据库访问错误,或者没有设置建立连接和创建语句所需的任何属性

addRowSetListener

void addRowSetListener(RowSetListener listener)
注册给定侦听器,以便此 RowSet 对象上发生事件时将得到通知。

参数:
listener - 一个组件,它实现了 RowSetListener 接口并希望在此 RowSet 对象上发生事件时得到通知
另请参见:
removeRowSetListener(javax.sql.RowSetListener)

removeRowSetListener

void removeRowSetListener(RowSetListener listener)
从在此 RowSet 对象上发生事件时得到通知的组件所组成的列表中移除指定的侦听器。

参数:
listener - 一个组件,它已注册为此 RowSet 对象的侦听器
另请参见:
addRowSetListener(javax.sql.RowSetListener)

setSQLXML

void setSQLXML(int parameterIndex,
               SQLXML xmlObject)
               throws SQLException
将指定参数设置为给定 java.sql.SQLXML 对象。在将此值发送到数据库时,驱动程序将其转换为 SQL XML 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
xmlObject - 映射 SQL XML 值的 SQLXML 对象
抛出:
SQLException - 如果发生数据库访问错误,在关闭的结果集上调用此方法,没有为 SQLXML 对象关闭 java.xml.transform.ResultWriterOutputStream,或者在处理 XML 值时发生错误。异常的 getCause 方法可以提供更详细的异常,例如,如果该流不包含有效的 XML。
从以下版本开始:
1.6

setSQLXML

void setSQLXML(String parameterName,
               SQLXML xmlObject)
               throws SQLException
将指定参数设置为给定的 java.sql.SQLXML 对象。在将此值发送到数据库时,驱动程序将其转换为 SQL XML 值。

参数:
parameterName - 参数的名称
xmlObject - 映射 SQL XML 值的 SQLXML 对象
抛出:
SQLException - 如果发生数据库访问错误,在关闭的结果集上调用此方法,没有为 SQLXML 对象关闭 java.xml.transform.ResultWriterOutputStream,或者在处理 XML 值时发生错误。异常的 getCause 方法可以提供更详细的异常,例如,如果该流不包含有效的 XML。
从以下版本开始:
1.6

setRowId

void setRowId(int parameterIndex,
              RowId x)
              throws SQLException
将指定参数设置为给定的 java.sql.RowId 对象。在将此值发送到数据库时,驱动程序将其转换为 SQL ROWID 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.6

setRowId

void setRowId(String parameterName,
              RowId x)
              throws SQLException
将指定参数设置为给定的 java.sql.RowId 对象。在将此值发送到数据库时,驱动程序将其转换为 SQL ROWID

参数:
parameterName - 参数的名称
x - 参数值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.6

setNString

void setNString(int parameterIndex,
                String value)
                throws SQLException
将指定参数设置为给定的 String 对象。在将此值发送到数据库时,驱动程序将其转换为 SQL NCHARNVARCHARLONGNVARCHAR 值(具体取决于该参数相对于驱动程序在 NVARCHAR 值上的限制的大小)。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
value - 参数值
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;或者发生数据库访问错误
从以下版本开始:
1.6

setNString

void setNString(String parameterName,
                String value)
                throws SQLException
将指定参数设置为给定的 String 对象。驱动程序将此值转换为 SQL NCHARNVARCHARLONGNVARCHAR

参数:
parameterName - 要设置的列的名称
value - 参数值
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;或者发生数据库访问错误
从以下版本开始:
1.6

setNCharacterStream

void setNCharacterStream(int parameterIndex,
                         Reader value,
                         long length)
                         throws SQLException
将指定参数设置为 Reader 对象。 Reader 读取数据,一直读取到文件末尾。驱动程序将执行从 Java 字符格式到数据库中国家字符集的必要转换。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
value - 参数值
length - 参数数据中的字符数。
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;或者发生数据库访问错误
从以下版本开始:
1.6

setNCharacterStream

void setNCharacterStream(String parameterName,
                         Reader value,
                         long length)
                         throws SQLException
将指定参数设置为 Reader 对象。 Reader 读取数据,一直读取到文件末尾。驱动程序将执行从 Java 字符格式到数据库中国家字符集的必要转换。

参数:
parameterName - 要设置的列的名称
value - 参数值
length - 参数数据中的字符数。
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;或者发生数据库访问错误
从以下版本开始:
1.6

setNCharacterStream

void setNCharacterStream(String parameterName,
                         Reader value)
                         throws SQLException
将指定参数设置为 Reader 对象。 Reader 读取数据,一直读取到文件末尾。驱动程序将执行从 Java 字符格式到数据库中国家字符集的必要转换。

注: 此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setNCharacterStream 是否更有效。

参数:
parameterName - 参数的名称
value - 参数值
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误;或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setNClob

void setNClob(String parameterName,
              NClob value)
              throws SQLException
将指定参数设置为 java.sql.NClob 对象。该对象实现 java.sql.NClob 接口。此 NClob 对象映射到 SQL NCLOB

参数:
parameterName - 要设置的列的名称
value - 参数值
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;或者发生数据库访问错误
从以下版本开始:
1.6

setNClob

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 - 如果 parameterIndex 不对应 SQL 语句中的参数标记;如果指定长度小于 0;如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setNClob

void setNClob(String parameterName,
              Reader reader)
              throws SQLException
将指定参数设置为 Reader 对象。此方法不同于 setCharacterStream (int, Reader) 方法,因为它通知驱动程序该参数值应该以 NCLOB 的形式发送到服务器。使用 setCharacterStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGNVARCHAR 还是 NCLOB 的形式发送到服务器。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setNClob 是否更有效。

参数:
parameterName - 参数的名称
reader - 包含用来设置参数值的数据的对象。
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误或者在关闭的 CallableStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setNClob

void setNClob(int parameterIndex,
              Reader reader,
              long length)
              throws SQLException
将指定参数设置为 Reader 对象。reader 必须包含 length 所指定的字符数,否则,在执行 PreparedStatement 时将会生成 SQLException。此方法不同于 setCharacterStream (int, Reader, int) 方法,因为它通知驱动程序该参数值应该以 NCLOB 的形式发送到服务器。使用 setCharacterStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGNVARCHAR 还是 NCLOB 的形式发送到服务器。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
reader - 包含用来设置参数值的数据的对象。
length - 参数数据中的字符数。
抛出:
SQLException - 如果 parameterIndex 不对应 SQL 语句中的参数标记;如果指定长度小于 0;如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误或者在关闭的 PreparedStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setNClob

void setNClob(int parameterIndex,
              NClob value)
              throws SQLException
将指定参数设置为 java.sql.NClob 对象。在将此值发送到数据库时,驱动程序将其转换为 SQL NCLOB 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
value - 参数值
抛出:
SQLException - 如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误
从以下版本开始:
1.6

setNClob

void setNClob(int parameterIndex,
              Reader reader)
              throws SQLException
将指定参数设置为 Reader 对象。此方法不同于 setCharacterStream (int, Reader) 方法,因为它通知驱动程序该参数值应该以 NCLOB 的形式发送到服务器。使用 setCharacterStream 方法时,驱动程序必须做额外的工作来确定参数数据是以 LONGNVARCHAR 还是 NCLOB 的形式发送到服务器。

注: 请参考 JDBC 驱动程序文档确定使用带有长度参数的 setNClob 是否更有效。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
reader - 包含用来设置参数值的数据的对象。
抛出:
SQLException - 如果 parameterIndex 不对应 SQL 语句中的参数标记;如果驱动程序不支持国家字符集;如果驱动程序检测到可能发生数据转换错误;如果发生数据库访问错误或者在关闭的 PreparedStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

setURL

void setURL(int parameterIndex,
            URL x)
            throws SQLException
将指定参数设置为给定的 java.net.URL 值。在将此值发送到数据库时,驱动程序将其转换为 SQL DATALINK 值。

参数:
parameterIndex - 第一个参数的索引是 1,第二个参数的索引是 2 ……
x - 要设置的 java.net.URL 对象
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的 PreparedStatement 上调用此方法
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策