类 BaseRowSet

java.lang.Object
javax.sql.rowset.BaseRowSet
所有已实现的接口:
Serializable , Cloneable

public abstract class BaseRowSet extends Object implements Serializable , Cloneable
提供具有基本功能的RowSet对象的抽象类。基本功能包括拥有属性和发送事件通知,所有 JavaBeans 组件都必须实现这些功能。

1.0 概述

BaseRowSet 类为所有 RowSet 实现和所有标准实现提供核心功能可能将此类与一个或多个 RowSet 接口结合使用,以提供标准的特定于供应商的实现。澄清一下,所有实现都必须至少实现 RowSet 接口之一(JdbcRowSetCachedRowSetJoinRowSetFilteredRowSetWebRowSet)。这意味着任何扩展 BaseRowSet 类的实现也必须实现 RowSet 接口之一。

BaseRowSet 类提供以下内容:

  • Properties
    • 用于存储当前属性的字段
    • 获取和设置属性的方法
  • 事件通知
  • 一套完整的setter方法用于在 RowSet 对象的命令中设置参数
  • Streams
    • 存储流实例的字段
    • 指示流类型的常量

2.0 设置属性

所有行集都维护一组属性,这些属性通常使用工具进行设置。行集具有的属性的数量和种类会有所不同,具体取决于 RowSet 实现的作用以及它获取数据的方式。例如,从 ResultSet 对象获取数据的行集需要设置建立数据库连接所需的属性。如果 RowSet 对象使用 DriverManager 工具建立连接,则它需要为标识适当驱动程序的 JDBC URL 设置一个属性,并且需要设置提供用户名和密码的属性。另一方面,如果行集使用 DataSource 对象建立连接(这是首选方法),则不需要设置 JDBC URL 的属性。相反,它需要设置数据源逻辑名称的属性以及用户名和密码的属性。

注意:为了使用 DataSource 对象建立连接,DataSource 对象必须已注册到使用 Java 命名和目录接口 (JNDI) API 的命名服务。该注册通常由以系统管理员身份行事的人员完成。

3.0 设置命令及其参数

当行集从关系数据库获取其数据时,它会执行生成 ResultSet 对象的命令(查询)。此查询是为 RowSet 对象的命令属性设置的命令。行集通过将 ResultSet 对象中的数据读入自身来用数据填充自身。如果查询包含要设置的值的占位符,BaseRowSet setter 方法用于设置这些值。如果需要,所有 setter 方法都允许将这些值设置为 null

以下代码片段说明了 CachedRowSet 对象 crs 可能如何设置其命令属性。请注意,如果使用工具来设置属性,则这是该工具将使用的代码。


  crs.setCommand("SELECT FIRST_NAME, LAST_NAME, ADDRESS FROM CUSTOMERS" +
          "WHERE CREDIT_LIMIT > ? AND REGION = ?");
  

在此示例中,CREDIT_LIMITREGION 的值是占位符参数,用问号 (?) 表示。第一个问号是占位参数编号 1 ,第二个问号是占位参数编号 2 ,依此类推。在执行查询之前,任何占位符参数都必须设置值。为了设置这些占位符参数,BaseRowSet类提供了一组setter方法,类似于PreparedStatement接口提供的方法,用于设置每种数据类型的值。 RowSet 对象在内部存储参数值,其 execute 方法在将命令发送到要执行的 DBMS 之前在内部使用它们来设置占位符参数的值。

以下代码片段演示了在上一示例的查询中设置两个参数。


  crs.setInt(1, 5000);
  crs.setString(2, "West");
  
如果此时调用 execute 方法,则发送到 DBMS 的查询将是:

  "SELECT FIRST_NAME, LAST_NAME, ADDRESS FROM CUSTOMERS" +
          "WHERE CREDIT_LIMIT > 5000 AND REGION = 'West'"
  
注意:将 ArrayClobBlobRef 对象设置为命令参数,将这些值存储为 SerialArraySerialClob , SerialBlobSerialRef 对象分别.

4.0 幕后参数处理

注意:BaseRowSet 类提供了两种 setter 方法,一种是设置属性,另一种是设置占位符参数。本节讨论的 setter 方法是那些设置占位符参数的方法。

使用 BaseRowSet setter 方法设置的占位符参数作为对象存储在内部 Hashtable 对象中。基元存储为它们的 Object 类型。例如,byte 存储为Byte 对象,int 存储为Integer 对象。调用方法 execute 时,Hashtable 对象中的值将替换命令中相应的占位符参数。

调用方法 getParams 将存储在 Hashtable 对象中的值作为 Object 实例的数组返回。此数组中的元素可以是简单的 Object 实例或数组(它是 Object 的一种类型)。使用的特定 setter 方法确定此数组中的元素是 Object 还是数组。

大多数设置占位符参数的方法都有两个参数,第一个参数指示要设置哪个占位符参数,第二个参数给出要设置的值。 setIntsetStringsetBooleansetLong 等方法属于此类。调用这些方法后,调用方法 getParams 将返回一个包含已设置值的数组。数组中的每个元素都是一个 Object 实例,表示已设置的值。这些值在数组中的顺序由传递给 setter 方法的 int(第一个参数)决定。数组中的值是传递给 setter 方法的值(第二个参数)。换句话说,数组中的第一个元素是要为 RowSet 对象的命令中的第一个占位符参数设置的值。第二个元素是要为第二个占位符参数设置的值,依此类推。

几个 setter 方法发送超出要设置的值的驱动程序和 DBMS 信息。当在使用这些设置方法之一后调用方法 getParams 时,数组中的元素本身将是数组以容纳附加信息。在此类别中,方法 setNull 是一种特殊情况,因为一个版本仅采用两个参数 (setNull(int parameterIndex, int SqlType))。然而,它需要一个数组来包含将传递给驱动程序和 DBMS 的信息。该数组中的第一个元素是要设置的值,即null,第二个元素是提供给的intsql类型,它指示设置为 null 的 SQL 值的类型。某些 DBMS 需要此信息,因此需要此信息以确保应用程序可移植。当要设置为 null 的值是用户定义的类型时,将使用另一个版本。它采用三个参数 (setNull(int parameterIndex, int sqlType, String typeName)),还需要一个数组来包含要传递给驱动程序和 DBMS 的信息。该数组中的前两个元素与 setNull 的第一个版本相同。第三个要素,typeName, 给出用户定义类型的 SQL 名称。与其他 setter 方法一样,要设置的占位符参数的数量由元素在 getParams 返回的数组中的位置指示。因此,例如,如果提供给 setNull 的参数是 2 ,则 getParams 返回的数组中的第二个元素将是一个包含两个或三个元素的数组。

一些方法,例如 setObjectsetDate 具有采用两个以上参数的版本,额外的参数向驱动程序或 DBMS 提供信息。例如,方法 setDatesetTimesetTimestamp 可以将 Calendar 对象作为它们的第三个参数。如果 DBMS 不存储时区信息,则驱动程序使用 Calendar 对象来构造要设置的 DateTimeTimestamp 对象。与提供附加信息的其他方法一样,getParams 返回的数组中的元素是一个数组,而不是简单的 Object 实例。

方法 setAsciiStreamsetBinaryStreamsetCharacterStreamsetUnicodeStream (已弃用,因此应用程序应改用 getCharacterStream )采用三个参数,因此对于它们而言, getParams 返回的数组中的元素也是一个数组。这些 setter 方法的不同之处在于,除了参数提供的信息外,数组还包含 BaseRowSet 常量之一,指示正在设置的流的类型。

注意:getParams 方法由扩展此类的 RowSet 实现在内部调用;它通常不被应用程序员直接调用。

5.0 事件通知

BaseRowSet 类为行集提供事件通知机制。它包含字段 listeners 、添加和删除监听器的方法以及通知监听器更改的方法。

监听器是已实现 RowSetListener 接口的对象。如果它已被添加到 RowSet 对象的监听器列表中,则当该 RowSet 对象上发生事件时,它将收到通知。每个监听器对 RowSetListener 方法的实现定义了该对象在收到事件发生通知时将执行的操作。

RowSet 对象可能会发生三种情况:

  1. 光标移动
  2. 单个行被更改(更新、删除或插入)
  3. 整个 RowSet 对象的内容被改变

用于通知的 BaseRowSet 方法指示已发生的事件类型。例如,notifyRowChanged 方法表示一行已被更新、删除或插入。每个通知方法都会创建一个 RowSetEvent 对象,该对象会提供给监听器以识别发生事件的 RowSet 对象。监听器如何处理这些信息(可能什么都不是)取决于它是如何实现的。

6.0 默认行为

默认的 BaseRowSet 对象使用许多起始值进行初始化。以下是扩展 BaseRowSet 类的默认 RowSet 实例:
  • 有一个可滚动的光标,不显示其他人所做的更改。
  • 是可更新的。
  • 不显示已删除的行。
  • 对于驱动程序执行 RowSet 对象的命令可能需要多长时间没有时间限制。
  • 对它可能包含的行数没有限制。
  • 对列可以包含的字节数没有限制。注意:此限制仅适用于包含以下类型值的列:BINARYVARBINARYLONGVARBINARYCHARVARCHARLONGVARCHAR
  • 不会看到未提交的数据(进行“脏”读取)。
  • 已打开转义处理。
  • 将其连接类型映射设置为 null
  • 有一个空的 Vector 对象,用于存储为 RowSet 对象的命令中的占位符参数设置的值。

如果需要其他值,应用程序必须显式设置属性值。例如,下面一行代码设置了CachedRowSet对象的最大行数crs到 500。

  crs.setMaxRows(500);
 
在此 BaseRowSet 类的扩展中实现的方法必须为任何违反定义断言的行为抛出一个 SQLException 对象。此外,如果扩展类重写并重新实现任何 BaseRowSet 方法并遇到连接或基础数据源问题,该方法可能为此,还要抛出一个 SQLException 对象。
自从:
1.5
参见:
  • 字段摘要

    字段
    修饰符和类型
    Field
    描述
    static final int
    RowSetReaderImpl 对象指示给定参数是 ASCII 流的常量。
    protected InputStream
    ResultSet 接口中指定的 getAsciiStream 方法将返回的 InputStream 对象。
    static final int
    RowSetReaderImpl 对象指示给定参数是二进制流的常量。
    protected InputStream
    ResultSet 接口中指定的 getBinaryStream 方法将返回的 InputStream 对象。
    protected Reader
    getCharacterStream 方法将返回的 Reader 对象,在 ResultSet 接口中指定。
    static final int
    RowSetReaderImpl 对象指示给定参数是 Unicode 流的常量。
    protected InputStream
    ResultSet 接口中指定的 getUnicodeStream 方法将返回的 InputStream 对象。
  • 构造方法总结

    构造方法
    构造方法
    描述
    构造一个新的 BaseRowSet 对象,并为其 listeners 字段使用默认的 Vector 对象进行初始化。
  • 方法总结

    修饰符和类型
    方法
    描述
    void
    每当此 RowSet 对象上发生事件时,监听器都会收到通知。
    void
    清除此 RowSet 对象在执行时在此 RowSet 对象的命令中设置的参数的内部表示中的所有当前参数值。
    检索作为此 RowSet 对象的命令的 SQL 查询。
    int
    返回此 RowSet 对象的并发性。
    返回提供给使用 Java 命名和目录接口 (JNDI) API 的命名服务时将检索 javax.sql.DataSource 对象的逻辑名称。
    boolean
    确定是否为此 RowSet 对象启用转义处理。
    int
    检索此 RowSet 对象的当前获取方向设置。
    int
    返回此 RowSet 对象的提取大小。
    int
    检索可用于此 RowSet 对象中的列值的最大字节数。
    int
    检索此 RowSet 对象可能包含的最大行数。
    检索包含已为此 RowSet 对象的命令设置的参数值(对象和基元)的数组,如果所有参数均未设置,则抛出 SQLException 对象。
    返回用于为此 RowSet 对象创建数据库连接的密码。
    int
    检索驱动程序等待查询执行的最大秒数。
    boolean
    检索一个 boolean 指示标记为删除的行是否出现在当前行的集合中。
    int
    返回此 RowSet 对象连接的事务隔离属性。
    int
    返回此 RowSet 对象的类型。
    检索与此 RowSet 对象的 Connection 对象关联的类型映射。
    检索此 RowSet 对象的 javax.sql.Reader 对象使用启用 JDBC 技术的驱动程序与关系数据库建立连接的 JDBC URL。
    返回用于创建数据库连接的用户名。
    protected void
    执行必要的内部配置和初始化,以允许任何 JDBC RowSet 实现开始使用 BaseRowSet 实例提供的标准设施。
    boolean
    返回一个 boolean 指示此 RowSet 对象是否为只读。
    protected void
    通知所有注册到此 RowSet 对象的监听器其光标已移动。
    protected void
    通知注册到此 RowSet 对象的所有监听器其行之一已更改。
    protected void
    通知注册到此 RowSet 对象的所有监听器其全部内容已更改。
    void
    从此 RowSet 对象的监听器列表中删除指定的对象。
    void
    setArray(int parameterIndex, Array array)
    将指定参数设置为 Java 编程语言中的 Array 对象。
    void
    setAsciiStream(int parameterIndex, InputStream x)
    将此 RowSet 对象的命令中的指定参数设置为给定的输入流。
    void
    setAsciiStream(int parameterIndex, InputStream x, int length)
    将指定参数设置为给定的 java.io.InputStream 对象,该对象将具有指定的字节数。
    void
    setAsciiStream(String parameterName, InputStream x)
    将指定参数设置为给定的输入流。
    void
    setAsciiStream(String parameterName, InputStream x, int length)
    将指定参数设置为给定的输入流,它将具有指定的字节数。
    void
    setBigDecimal(int parameterIndex, BigDecimal x)
    将指定参数设置为给定的 java.lang.BigDecimal 值。
    void
    setBigDecimal(String parameterName, BigDecimal x)
    将指定参数设置为给定的 java.math.BigDecimal 值。
    void
    setBinaryStream(int parameterIndex, InputStream x)
    将此 RowSet 对象的命令中的指定参数设置为给定的输入流。
    void
    setBinaryStream(int parameterIndex, InputStream x, int length)
    将指定参数设置为给定的 java.io.InputStream 对象,该对象将具有指定的字节数。
    void
    setBinaryStream(String parameterName, InputStream x)
    将指定参数设置为给定的输入流。
    void
    setBinaryStream(String parameterName, InputStream x, int length)
    将指定参数设置为给定的输入流,它将具有指定的字节数。
    void
    setBlob(int parameterIndex, InputStream inputStream)
    将指定参数设置为 InputStream 对象。
    void
    setBlob(int parameterIndex, InputStream inputStream, long length)
    将指定参数设置为 InputStream 对象。
    void
    setBlob(int parameterIndex, Blob x)
    将指定参数设置为 Java 编程语言中给定的 Blob 对象。
    void
    setBlob(String parameterName, InputStream inputStream)
    将指定参数设置为 InputStream 对象。
    void
    setBlob(String parameterName, InputStream inputStream, long length)
    将指定参数设置为 InputStream 对象。
    void
    setBlob(String parameterName, Blob x)
    将指定参数设置为给定的 java.sql.Blob 对象。
    void
    setBoolean(int parameterIndex, boolean x)
    将指定参数设置为 Java 编程语言中给定的 boolean
    void
    setBoolean(String parameterName, boolean x)
    将指定参数设置为给定的 Java boolean 值。
    void
    setByte(int parameterIndex, byte x)
    将指定参数设置为 Java 编程语言中给定的 byte
    void
    setByte(String parameterName, byte x)
    将指定参数设置为给定的 Java byte 值。
    void
    setBytes(int parameterIndex, byte[] x)
    将指定参数设置为给定的字节数组。
    void
    setBytes(String parameterName, byte[] x)
    将指定参数设置为给定的 Java 字节数组。
    void
    setCharacterStream(int parameterIndex, Reader reader)
    将此 RowSet 对象命令中的指定参数设置为给定的 Reader 对象。
    void
    setCharacterStream(int parameterIndex, Reader reader, int length)
    将指定参数设置为给定的 java.io.Reader 对象,该对象将具有指定的字符数。
    void
    setCharacterStream(String parameterName, Reader reader)
    将指定参数设置为给定的 Reader 对象。
    void
    setCharacterStream(String parameterName, Reader reader, int length)
    将指定参数设置为给定的 Reader 对象,它是给定的字符长度。
    void
    setClob(int parameterIndex, Reader reader)
    将指定参数设置为 Reader 对象。
    void
    setClob(int parameterIndex, Reader reader, long length)
    将指定参数设置为 Reader 对象。
    void
    setClob(int parameterIndex, Clob x)
    将指定参数设置为 Java 编程语言中给定的 Clob 对象。
    void
    setClob(String parameterName, Reader reader)
    将指定参数设置为 Reader 对象。
    void
    setClob(String parameterName, Reader reader, long length)
    将指定参数设置为 Reader 对象。
    void
    setClob(String parameterName, Clob x)
    将指定参数设置为给定的 java.sql.Clob 对象。
    void
    将此 RowSet 对象的 command 属性设置为给定的 String 对象并清除为上一个命令设置的参数(如果有)。
    void
    setConcurrency(int concurrency)
    将此 RowSet 对象的并发设置为指定的并发。
    void
    将此 RowSet 对象的 DataSource 名称属性设置为给定的逻辑名称,并将此 RowSet 对象的 Url 属性设置为 null
    void
    setDate(int parameterIndex, Date x)
    将指定参数设置为给定的 java.sql.Date 值。
    void
    setDate(int parameterIndex, Date x, Calendar cal)
    将指定参数设置为给定的 java.sql.Date 对象。
    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)
    将指定参数设置为 Java 编程语言中给定的 double
    void
    setDouble(String parameterName, double x)
    将指定参数设置为给定的 Java double 值。
    void
    setEscapeProcessing(boolean enable)
    设置为给定的 boolean 驱动程序是否将扫描转义语法并在将 SQL 语句发送到数据库之前进行转义替换。
    void
    setFetchDirection(int direction)
    向驱动程序提供有关处理此 RowSet 对象中的行的方向的性能提示。
    void
    setFetchSize(int rows)
    将此 RowSet 对象的提取大小设置为给定的行数。
    void
    setFloat(int parameterIndex, float x)
    将指定参数设置为 Java 编程语言中给定的 float
    void
    setFloat(String parameterName, float x)
    将指定参数设置为给定的 Java float 值。
    void
    setInt(int parameterIndex, int x)
    将指定参数设置为 Java 编程语言中的 int
    void
    setInt(String parameterName, int x)
    将指定参数设置为给定的 Java int 值。
    void
    setLong(int parameterIndex, long x)
    将指定参数设置为 Java 编程语言中给定的 long
    void
    setLong(String parameterName, long x)
    将指定参数设置为给定的 Java long 值。
    void
    setMaxFieldSize(int max)
    将可用于此 RowSet 对象中的列值的最大字节数设置为给定数字。
    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, Reader reader)
    将指定参数设置为 Reader 对象。
    void
    setNClob(int parameterIndex, Reader reader, long length)
    将指定参数设置为 Reader 对象。
    void
    setNClob(int parameterIndex, NClob value)
    将指定参数设置为 java.sql.NClob 对象。
    void
    setNClob(String parameterName, Reader reader)
    将指定参数设置为 Reader 对象。
    void
    setNClob(String parameterName, Reader reader, long length)
    将指定参数设置为 Reader 对象。
    void
    setNClob(String parameterName, NClob value)
    将指定参数设置为 java.sql.NClob 对象。
    void
    setNString(int parameterIndex, String value)
    将指定参数设置为给定的 String 对象。
    void
    setNString(String parameterName, String value)
    将指定参数设置为给定的 String 对象。
    void
    setNull(int parameterIndex, int sqlType)
    将指定参数设置为 SQL NULL
    void
    setNull(int parameterIndex, int sqlType, String typeName)
    将指定参数设置为 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
    void
    setObject(int parameterIndex, Object x, int targetSqlType)
    使用给定的 Object 值设置指定参数的值。
    void
    setObject(int parameterIndex, Object x, int targetSqlType, int scale)
    将指定参数设置为 Java 编程语言中的 Object
    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
    将用于为此 RowSet 对象创建数据库连接的密码设置为给定的 String 对象。
    void
    setQueryTimeout(int seconds)
    将驱动程序等待查询执行的最大秒数设置为给定数字。
    void
    setReadOnly(boolean value)
    将此 RowSet 对象的 readOnly 属性设置为给定的 boolean
    void
    setRef(int parameterIndex, Ref ref)
    将指定参数设置为 Java 编程语言中给定的 Ref 对象。
    void
    setRowId(int parameterIndex, RowId x)
    将指定参数设置为给定的 java.sql.RowId 对象。
    void
    setRowId(String parameterName, RowId x)
    将指定参数设置为给定的 java.sql.RowId 对象。
    void
    setShort(int parameterIndex, short x)
    将指定参数设置为 Java 编程语言中给定的 short
    void
    setShort(String parameterName, short x)
    将指定参数设置为给定的 Java short 值。
    void
    setShowDeleted(boolean value)
    将属性 showDeleted 设置为给定的 boolean 值,该值确定标记为删除的行是否出现在当前行集中。
    void
    setSQLXML(int parameterIndex, SQLXML xmlObject)
    将指定参数设置为给定的 java.sql.SQLXML 对象。
    void
    setSQLXML(String parameterName, SQLXML xmlObject)
    将指定参数设置为给定的 java.sql.SQLXML 对象。
    void
    setString(int parameterIndex, String x)
    将指定参数设置为给定的 String 值。
    void
    setString(String parameterName, String x)
    将指定参数设置为给定的 Java String 值。
    void
    setTime(int parameterIndex, Time x)
    将指定参数设置为给定的 java.sql.Time 值。
    void
    setTime(int parameterIndex, Time x, Calendar cal)
    将指定参数设置为给定的 java.sql.Time 对象。
    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)
    将指定参数设置为给定的 java.sql.Timestamp 值。
    void
    setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
    将指定参数设置为给定的 java.sql.Timestamp 对象。
    void
    setTimestamp(String parameterName, Timestamp x)
    将指定参数设置为给定的 java.sql.Timestamp 值。
    void
    setTimestamp(String parameterName, Timestamp x, Calendar cal)
    使用给定的 Calendar 对象将指定参数设置为给定的 java.sql.Timestamp 值。
    void
    将此 JDBC RowSet 对象的事务隔离属性设置为给定常量。
    void
    setType(int type)
    将此 RowSet 对象的类型设置为指定类型。
    void
    安装给定的 java.util.Map 对象作为与此 RowSet 对象的 Connection 对象关联的类型映射。
    void
    setUnicodeStream(int parameterIndex, InputStream x, int length)
    已弃用。
    应该使用 getCharacterStream 代替它
    void
    setUrl(String url)
    将此 RowSet 对象的 Url 属性设置为给定的 String 对象,并将数据源名称属性设置为 null
    void
    setURL(int parameterIndex, URL x)
    将指定参数设置为给定的 java.net.URL 值。
    void
    将此 RowSet 对象的用户名属性设置为给定的用户名。

    在类 java.lang.Object 中声明的方法

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 字段详细信息

    • UNICODE_STREAM_PARAM

      public static final int UNICODE_STREAM_PARAM
      RowSetReaderImpl 对象指示给定参数是 Unicode 流的常量。此 RowSetReaderImpl 对象作为 SyncFactory 静态工厂 SPI 机制中定义的 SyncProvider 抽象类的扩展提供。
      参见:
    • BINARY_STREAM_PARAM

      public static final int BINARY_STREAM_PARAM
      RowSetReaderImpl 对象指示给定参数是二进制流的常量。 RowSetReaderImpl 对象作为 SyncFactory 静态工厂 SPI 机制中定义的 SyncProvider 抽象类的扩展提供。
      参见:
    • ASCII_STREAM_PARAM

      public static final int ASCII_STREAM_PARAM
      RowSetReaderImpl 对象指示给定参数是 ASCII 流的常量。 RowSetReaderImpl 对象作为 SyncFactory 静态工厂 SPI 机制中定义的 SyncProvider 抽象类的扩展提供。
      参见:
    • binaryStream

      protected InputStream  binaryStream
      ResultSet 接口中指定的 getBinaryStream 方法将返回的 InputStream 对象。
    • unicodeStream

      protected InputStream  unicodeStream
      ResultSet 接口中指定的 getUnicodeStream 方法将返回的 InputStream 对象。
    • asciiStream

      protected InputStream  asciiStream
      ResultSet 接口中指定的 getAsciiStream 方法将返回的 InputStream 对象。
    • charStream

      protected Reader  charStream
      getCharacterStream 方法将返回的 Reader 对象,在 ResultSet 接口中指定。
  • 构造方法详细信息

    • BaseRowSet

      public BaseRowSet()
      构造一个新的 BaseRowSet 对象,并为其 listeners 字段使用默认的 Vector 对象进行初始化。用于初始化它的其他默认值列在此类的类注解的第 6.0 节中。
  • 方法详情

    • initParams

      protected void initParams()
      执行必要的内部配置和初始化,以允许任何 JDBC RowSet 实现开始使用 BaseRowSet 实例提供的标准设施。这个方法应该在实例化 RowSet 对象以正确初始化所有参数后调用。这个方法应该永远不会被应用程序调用,而是通过扩展此类的 RowSet 实现调用。
    • addRowSetListener

      public void addRowSetListener(RowSetListener  listener)
      每当此 RowSet 对象上发生事件时,监听器都会收到通知。

      例如,监听器可能是需要更新以准确反映 RowSet 对象的当前状态的表格或图形。

      笔记:如果 RowSetListener 对象是 null ,此方法会静默丢弃 null 值并且不会向监听器集添加空引用。

      笔记如果监听器已经设置,并且新的 RowSetListener 实例被添加到已经注册的监听器集合中以接收来自这个 RowSet 的事件通知。

      参数:
      listener - 一个实现了 javax.sql.RowSetListener 接口的对象,并希望在该 RowSet 对象上发生的任何事件得到通知;可能为空。
      参见:
    • removeRowSetListener

      public void removeRowSetListener(RowSetListener  listener)
      从此 RowSet 对象的监听器列表中删除指定的对象。如果给定的参数不是已注册的监听器,则此方法不执行任何操作。笔记:如果 RowSetListener 对象是 null ,此方法会自动丢弃 null 值。
      参数:
      listener - 在此 RowSet 对象的监听器列表中的 RowSetListener 对象
      参见:
    • notifyCursorMoved

      protected void notifyCursorMoved() throws SQL异常
      通知所有注册到此 RowSet 对象的监听器其光标已移动。

      当应用程序调用一个方法来移动光标时,该方法移动光标,然后在内部调用此方法。一个应用程序应该切勿直接调用此方法。

      抛出:
      SQLException - 如果扩展 BaseRowSet 抽象类的类没有实现 RowSet 接口或其子接口之一。
    • notifyRowChanged

      protected void notifyRowChanged() throws SQL异常
      通知注册到此 RowSet 对象的所有监听器其行之一已更改。

      当应用程序调用更改行的方法时,例如 CachedRowSet 方法 insertRowupdateRowdeleteRow,该方法会在内部调用 notifyRowChanged。一个应用程序应该切勿直接调用此方法。

      抛出:
      SQLException - 如果扩展 BaseRowSet 抽象类的类没有实现 RowSet 接口或其子接口之一。
    • notifyRowSetChanged

      protected void notifyRowSetChanged() throws SQL异常
      通知注册到此 RowSet 对象的所有监听器其全部内容已更改。

      当应用程序调用更改 RowSet 对象的全部内容的方法时,例如 CachedRowSet 方法 executepopulaterestoreOriginalrelease ,该方法在内部调用 notifyRowSetChanged(直接或间接)。一个应用程序应该切勿直接调用此方法。

      抛出:
      SQLException - 如果扩展 BaseRowSet 抽象类的类没有实现 RowSet 接口或其子接口之一。
    • getCommand

      public String  getCommand()
      检索作为此 RowSet 对象的命令的 SQL 查询。命令属性包含将执行以填充此 RowSet 对象的查询。

      此方法返回的 SQL 查询由 RowSet 方法(例如 executepopulate )使用,这些方法可以由扩展 BaseRowSet 抽象类并实现一个或多个标准 JSR-114 RowSet 接口的任何类实现。

      RowSet 对象的读取器使用该命令来获取 ResultSet 对象。然后读取器从 ResultSet 对象读取数据并使用它来填充此 RowSet 对象。

      command 属性的默认值为 null

      返回:
      String 是此 RowSet 对象的 command 属性的值;可能是null
      参见:
    • setCommand

      public void setCommand(String  cmd) throws SQL异常
      将此 RowSet 对象的 command 属性设置为给定的 String 对象并清除为上一个命令设置的参数(如果有)。

      如果 RowSet 对象从不支持命令的源(如电子表格或其他表格文件)获取数据,则可能不需要 command 属性。因此,此属性是可选的,可能是 null

      参数:
      cmd - 一个 String 对象包含一个 SQL 查询,该查询将被设置为此 RowSet 对象的命令属性;可能是 null 但可能不是空字符串
      抛出:
      SQLException - 如果提供空字符串作为命令值
      参见:
    • getUrl

      public String  getUrl() throws SQL异常
      检索此 RowSet 对象的 javax.sql.Reader 对象使用启用 JDBC 技术的驱动程序与关系数据库建立连接的 JDBC URL。

      如果基础数据源是非 SQL 数据源,例如电子表格或 XML 数据源,则 Url 属性将为 null

      返回:
      一个 String 对象,包含用于为该 RowSet 对象建立连接的 JDBC URL;如果未设置,可能是 null(默认值)
      抛出:
      SQLException - 如果检索 URL 值时发生错误
      参见:
    • setUrl

      public void setUrl(String  url) throws SQL异常
      将此 RowSet 对象的 Url 属性设置为给定的 String 对象,并将数据源名称属性设置为 null。 Url 属性是一个 JDBC URL,在使用支持 JDBC 技术的驱动程序(“JDBC 驱动程序”)和 DriverManager 创建连接时使用。可以在驱动程序文档中找到要使用的特定驱动程序的正确 JDBC URL。尽管有关于如何形成 JDBC URL 的指南,但驱动程序供应商可以指定任何 String 对象,但长度为 0(空字符串)的对象除外。

      如果使用 DataSource 对象而不是 DriverManager 建立连接,则设置 Url 属性是可选的。驱动程序将使用 URL 属性或 dataSourceName 属性来创建连接,以最近指定的为准。如果应用程序使用 JDBC URL,则它必须在使用 RowSet 对象连接到数据库之前加载接受 JDBC URL 的 JDBC 驱动程序。 RowSet 对象将在内部使用 URL 创建数据库连接以读取或写入数据。

      参数:
      url - 一个 String 对象,包含将用于为此 RowSet 对象建立与数据库的连接的 JDBC URL;可以是 null 但不能是空字符串
      抛出:
      SQLException - 如果设置 Url 属性时发生错误或提供的参数是长度为 0 的字符串(空字符串)
      参见:
    • getDataSourceName

      public String  getDataSourceName()
      返回提供给使用 Java 命名和目录接口 (JNDI) API 的命名服务时将检索 javax.sql.DataSource 对象的逻辑名称。此 DataSource 对象可用于建立到它所代表的数据源的连接。

      用户应设置 url 或数据源名称属性。驱动程序将使用最近设置的属性来建立连接。

      返回:
      一个 String 对象,标识用于建立连接的 DataSource 对象;如果未设置逻辑名称,则返回 null
      参见:
    • setDataSourceName

      public void setDataSourceName(String  name) throws SQL异常
      将此 RowSet 对象的 DataSource 名称属性设置为给定的逻辑名称,并将此 RowSet 对象的 Url 属性设置为 null。该名称必须已绑定到 JNDI 命名服务中的 DataSource 对象,以便应用程序可以使用该名称进行查找以检索绑定到它的 DataSource 对象。然后可以使用 DataSource 对象建立到它所代表的数据源的连接。

      用户应该设置 Url 属性或 dataSourceName 属性。如果设置了两个属性,驱动程序将使用最近设置的属性。

      参数:
      name - 一个 String 对象,其名称可提供给基于 JNDI 技术的命名服务,以检索可用于获取连接的 DataSource 对象;可以是 null 但不能是空字符串
      抛出:
      SQLException - 如果提供空字符串作为 DataSource 名称
      参见:
    • getUsername

      public String  getUsername()
      返回用于创建数据库连接的用户名。因为它没有序列化,所以在调用方法 execute 之前在运行时设置用户名属性。
      返回:
      包含提供给数据源以创建连接的用户名的 String 对象;如果未设置,可能是 null(默认值)
      参见:
    • setUsername

      public void setUsername(String  name)
      将此 RowSet 对象的用户名属性设置为给定的用户名。因为它没有序列化,用户名属性在调用方法 execute 之前在运行时设置。
      参数:
      name - String 对象包含提供给数据源以创建连接的用户名。它可能为空。
      参见:
    • getPassword

      public String  getPassword()
      返回用于为此 RowSet 对象创建数据库连接的密码。因为密码属性未序列化,所以它是在运行时调用方法 execute 之前设置的。默认值为null
      返回:
      String 对象,表示必须提供给数据库以创建连接的密码
      参见:
    • setPassword

      public void setPassword(String  pass)
      将用于为此 RowSet 对象创建数据库连接的密码设置为给定的 String 对象。因为密码属性未序列化,所以它是在运行时调用方法 execute 之前设置的。
      参数:
      pass - String 对象代表提供给数据库以创建连接的密码。它可能为空。
      参见:
    • setType

      public void setType(int type) throws SQL异常
      将此 RowSet 对象的类型设置为指定类型。默认类型是 ResultSet.TYPE_SCROLL_INSENSITIVE
      参数:
      type - 以下常量之一:ResultSet.TYPE_FORWARD_ONLYResultSet.TYPE_SCROLL_INSENSITIVEResultSet.TYPE_SCROLL_SENSITIVE
      抛出:
      SQLException - 如果提供的参数不是以下常量之一:ResultSet.TYPE_FORWARD_ONLYResultSet.TYPE_SCROLL_INSENSITIVE ResultSet.TYPE_SCROLL_SENSITIVE
      参见:
    • getType

      public int getType() throws SQL异常
      返回此 RowSet 对象的类型。该类型最初由创建 RowSet 对象的语句确定。 RowSet 对象可以随时调用方法 setType 来更改其类型。默认值为 TYPE_SCROLL_INSENSITIVE
      返回:
      此 JDBC RowSet 对象的类型,它必须是以下之一:ResultSet.TYPE_FORWARD_ONLYResultSet.TYPE_SCROLL_INSENSITIVEResultSet.TYPE_SCROLL_SENSITIVE
      抛出:
      SQLException - 如果获取此 RowSet 对象的类型时发生错误
      参见:
    • setConcurrency

      public void setConcurrency(int concurrency) throws SQL异常
      将此 RowSet 对象的并发设置为指定的并发。任何 RowSet 对象(连接或断开连接)的默认并发性是 ResultSet.CONCUR_UPDATABLE ,但可以随时调用此方法来更改并发性。
      参数:
      concurrency - 以下常量之一:ResultSet.CONCUR_READ_ONLYResultSet.CONCUR_UPDATABLE
      抛出:
      SQLException - 如果提供的参数不是以下常量之一:ResultSet.CONCUR_UPDATABLEResultSet.CONCUR_READ_ONLY
      参见:
    • isReadOnly

      public boolean isReadOnly()
      返回一个 boolean 指示此 RowSet 对象是否为只读。任何更新只读 RowSet 对象的尝试都将导致抛出 SQLException。默认情况下,如果可以更新,行集是可更新的。
      返回:
      true 如果无法更新此 RowSet 对象; false否则
      参见:
    • setReadOnly

      public void setReadOnly(boolean value)
      将此 RowSet 对象的 readOnly 属性设置为给定的 boolean
      参数:
      value - true 表示这个 RowSet 对象是只读的; false 表示它是可更新的
    • getTransactionIsolation

      public int getTransactionIsolation()
      返回此 RowSet 对象连接的事务隔离属性。此属性表示请求在事务中使用的事务隔离级别。

      对于在断开连接的环境中运行的 RowSet 实现(例如 CachedRowSet),SyncProvider 对象提供互补的锁定和数据完整性选项。下面描述的选项仅与连接的 RowSet 对象(JdbcRowSet 对象)有关。

      返回:
      以下常量之一:Connection.TRANSACTION_NONEConnection.TRANSACTION_READ_UNCOMMITTEDConnection.TRANSACTION_READ_COMMITTEDConnection.TRANSACTION_REPEATABLE_READConnection.TRANSACTION_SERIALIZABLE
      参见:
    • setTransactionIsolation

      public void setTransactionIsolation(int level) throws SQL异常
      将此 JDBC RowSet 对象的事务隔离属性设置为给定常量。如果可以,DBMS 将对事务使用此事务隔离级别。

      对于在断开连接的环境中运行的 RowSet 实现(例如 CachedRowSet),正在使用的 SyncProvider 对象提供补充锁定和数据完整性选项。下面描述的选项仅与连接的 RowSet 对象(JdbcRowSet 对象)有关。

      参数:
      level - 以下常量之一,按升序排列:Connection.TRANSACTION_NONEConnection.TRANSACTION_READ_UNCOMMITTEDConnection.TRANSACTION_READ_COMMITTEDConnection.TRANSACTION_REPEATABLE_READConnection.TRANSACTION_SERIALIZABLE
      抛出:
      SQLException - 如果给定参数不是连接常量之一
      参见:
    • getTypeMap

      public Map <String ,Class <?>> getTypeMap()
      检索与此 RowSet 对象的 Connection 对象关联的类型映射。

      支持 JDBC 3.0 API 的驱动程序将创建具有关联类型映射的 Connection 对象。此类型映射最初为空,可以包含一个或多个完全限定的 SQL 名称和 Class 对象,指示命名的 SQL 值将映射到的类。当没有其他类型映射取代它时,连接类型map中指定的类型映射用于自定义类型映射。

      如果类型映射显式提供给可以执行自定义映射的方法,则该类型映射将取代连接的类型映射。

      返回:
      作为此 RowSet 对象连接的类型映射的 java.util.Map 对象
    • setTypeMap

      public void setTypeMap(Map <String ,Class <?>> map)
      安装给定的 java.util.Map 对象作为与此 RowSet 对象的 Connection 对象关联的类型映射。除非将不同的类型映射显式提供给方法,否则将使用此类型map中指示的自定义映射,在这种情况下,将使用提供的类型映射。
      参数:
      map - 一个 java.util.Map 对象,它包含从用户定义类型 (UDT) 的 SQL 类型名称到 Java 编程语言中的类的映射。 Map 对象中的每个条目都包含 UDT 的完全限定 SQL 名称和该 UDT 的 SQLData 实现的 Class 对象。可能是 null
    • getMaxFieldSize

      public int getMaxFieldSize() throws SQL异常
      检索可用于此 RowSet 对象中的列值的最大字节数。此限制仅适用于包含以下类型值的列:BINARYVARBINARYLONGVARBINARYCHARVARCHARLONGVARCHAR。如果超出限制,多余的数据将被静默丢弃。
      返回:
      int 指示当前最大列大小限制;零意味着没有限制
      抛出:
      SQLException - 如果在内部确定列大小的最大限制时发生错误
    • setMaxFieldSize

      public void setMaxFieldSize(int max) throws SQL异常
      将可用于此 RowSet 对象中的列值的最大字节数设置为给定数字。此限制仅适用于包含以下类型值的列:BINARYVARBINARYLONGVARBINARYCHARVARCHARLONGVARCHAR。如果超出限制,多余的数据将被静默丢弃。为了获得最大的可移植性,建议使用大于 256 的值。
      参数:
      max - 一个 int 表示新的最大列大小限制;零意味着没有限制
      抛出:
      SQLException - 如果 (1) 在内部设置列大小的最大限制时发生错误或 (2) 设置的大小小于 0
    • getMaxRows

      public int getMaxRows() throws SQL异常
      检索此 RowSet 对象可能包含的最大行数。如果超过此限制,多余的行将被静默删除。
      返回:
      int 指示当前最大行数;零意味着没有限制
      抛出:
      SQLException - 如果内部发生错误,确定 Rowset 对象可以包含的行的最大限制
    • setMaxRows

      public void setMaxRows(int max) throws SQL异常
      将此 RowSet 对象可能包含的最大行数设置为给定的数字。如果超过此限制,多余的行将被静默删除。
      参数:
      max - 一个 int 指示当前最大行数;零意味着没有限制
      抛出:
      SQLException - 如果在内部设置 JDBC RowSet 对象可以包含的行数的最大限制时发生错误;或者如果max小于 0 ;或者如果max小于 RowSetfetchSize
    • setEscapeProcessing

      public void setEscapeProcessing(boolean enable) throws SQL异常
      设置为给定的 boolean 驱动程序是否将扫描转义语法并在将 SQL 语句发送到数据库之前进行转义替换。默认是让驱动做转义处理。

      注意:由于 PreparedStatement 对象通常在进行此调用之前已被解析,因此对准备好的语句禁用转义处理可能无效。

      参数:
      enable - true 启用转义处理; false 禁用它
      抛出:
      SQLException - 如果设置启用 JDBC 技术的底层驱动程序处理转义语法时发生错误
    • getQueryTimeout

      public int getQueryTimeout() throws SQL异常
      检索驱动程序等待查询执行的最大秒数。如果超出限制,则会抛出 SQLException
      返回:
      当前查询超时限制(以秒为单位);零意味着没有限制
      抛出:
      SQLException - 如果在确定查询超时值时发生错误
    • setQueryTimeout

      public void setQueryTimeout(int seconds) throws SQL异常
      将驱动程序等待查询执行的最大秒数设置为给定数字。如果超出限制,则会抛出 SQLException
      参数:
      seconds - 以秒为单位的新查询超时限制;零表示没有限制;不得小于零
      抛出:
      SQLException - 如果设置查询超时时发生错误或查询超时值小于 0
    • getShowDeleted

      public boolean getShowDeleted() throws SQL异常
      检索一个 boolean 指示标记为删除的行是否出现在当前行的集合中。默认值为 false

      注意:允许删除的行保持可见会使某些方法的行为复杂化。然而,大多数 RowSet 对象用户可以简单地忽略这个额外的细节,因为只有复杂的应用程序可能想要利用这个特性。

      返回:
      true 如果删除的行可见; false否则
      抛出:
      SQLException - 如果发生错误确定删除的行是否可见
      参见:
    • setShowDeleted

      public void setShowDeleted(boolean value) throws SQL异常
      将属性 showDeleted 设置为给定的 boolean 值,该值确定标记为删除的行是否出现在当前行集中。
      参数:
      value - true 如果应显示已删除的行; false否则
      抛出:
      SQLException - 如果设置删除的行是否可见时发生错误
      参见:
    • getEscapeProcessing

      public boolean getEscapeProcessing() throws SQL异常
      确定是否为此 RowSet 对象启用转义处理。
      返回:
      true 如果打开转义处理; false否则
      抛出:
      SQLException - 如果在确定转义处理是否启用或内部转义处理触发器尚未启用时发生错误
    • setFetchDirection

      public void setFetchDirection(int direction) throws SQL异常
      向驱动程序提供有关处理此 RowSet 对象中的行的方向的性能提示。驱动程序可能会忽略此提示。

      RowSet 对象继承了它从中获取数据的 ResultSet 对象的默认属性。该 ResultSet 对象的默认提取方向由创建它的 Statement 对象设置。

      此方法仅适用于使用 JDBC 驱动程序连接到数据库的 RowSet 对象。

      RowSet 对象可以随时使用此方法来更改其获取方向的设置。

      参数:
      direction - ResultSet.FETCH_FORWARDResultSet.FETCH_REVERSEResultSet.FETCH_UNKNOWN 之一
      抛出:
      SQLException - 如果 (1) RowSet 类型为 TYPE_FORWARD_ONLY 并且给定的提取方向不是 FETCH_FORWARD 或 (2) 给定的提取方向不是以下之一:ResultSet.FETCH_FORWARD、ResultSet.FETCH_REVERSE 或 ResultSet.FETCH_UNKNOWN
      参见:
    • getFetchDirection

      public int getFetchDirection() throws SQL异常
      检索此 RowSet 对象的当前获取方向设置。默认类型是ResultSet.FETCH_FORWARD
      返回:
      ResultSet.FETCH_FORWARDResultSet.FETCH_REVERSEResultSet.FETCH_UNKNOWN 之一
      抛出:
      SQLException - 如果在确定获取行的当前获取方向时发生错误
      参见:
    • setFetchSize

      public void setFetchSize(int rows) throws SQL异常
      将此 RowSet 对象的提取大小设置为给定的行数。当此 RowSet 对象需要更多行时,提取大小为启用 JDBC 技术的驱动程序(“JDBC 驱动程序”)提供有关应从数据库中提取的行数的提示。如果指定的提取大小为零,驱动程序将忽略该值,并可以自由地猜测提取大小应该是多少。

      RowSet 对象继承了它从中获取数据的 ResultSet 对象的默认属性。该 ResultSet 对象的默认提取大小由创建它的 Statement 对象设置。

      此方法仅适用于使用 JDBC 驱动程序连接到数据库的 RowSet 对象。对于连接的 RowSet 实现,例如 JdbcRowSet ,此方法对底层 JDBC 驱动程序有直接和直接的影响。

      RowSet 对象可以随时使用此方法来更改其获取大小的设置。

      对于在断开连接的环境中运行的 RowSet 实现(例如 CachedRowSet ),正在使用的 SyncProvider 对象可能会利用提取大小来轮询数据源并检索不超过提取大小并且可能构成原始查询返回的实际行。这是由断开连接的 RowSet 对象使用的特定 SyncProvider 对象确定的实现差异。

      参数:
      rows - 要获取的行数; 0 让驱动程序决定最佳获取大小;不得小于 0 或大于此 RowSet 对象允许的最大行数(调用方法 getMaxRows() 返回的数字)
      抛出:
      SQLException - 如果指定的提取大小小于 0 或大于最大行数的限制
      参见:
    • getFetchSize

      public int getFetchSize() throws SQL异常
      返回此 RowSet 对象的提取大小。默认值为零。
      返回:
      当此 RowSet 对象需要来自数据库的更多行时,建议作为提取大小的行数
      抛出:
      SQLException - 如果在确定当前提取大小中的行数时发生错误
      参见:
    • getConcurrency

      public int getConcurrency() throws SQL异常
      返回此 RowSet 对象的并发性。对于已连接和未连接的 RowSet 对象,默认值为 CONCUR_UPDATABLE

      应用程序可以随时调用方法 setConcurrency 来更改 RowSet 对象的并发性。

      返回:
      RowSet 对象的并发类型,必须是以下之一:ResultSet.CONCUR_READ_ONLYResultSet.CONCUR_UPDATABLE
      抛出:
      SQLException - 如果获取此 RowSet 对象的并发性时发生错误
      参见:
    • setNull

      public void setNull(int parameterIndex, int sqlType) throws SQL异常
      将指定参数设置为 SQL NULL。请注意,必须使用 java.sql.Types 中定义的类型代码之一指定参数的 SQL 类型。此 SQL 类型在第二个参数中指定。

      请注意,第二个参数告诉 DBMS 设置为 NULL 的值的数据类型。某些 DBMS 需要此信息,因此需要此信息才能使代码更具可移植性。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setNull 之后调用方法 getParams 将返回一个包含已设置的参数值的 Object 数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是 null 。第二个元素是为sql类型.参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果将第二个占位符参数设置为 null,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      sqlType - int 是类 Types 中定义的 SQL 类型代码之一。如果非标准sql类型提供,此方法不会抛出 SQLException 。这允许对非标准 SQL 类型的隐式支持。
      抛出:
      SQLException - 如果发生数据库访问错误或给定参数索引超出范围
      参见:
    • setNull

      public void setNull(int parameterIndex, int sqlType, String  typeName) throws SQL异常
      将指定参数设置为 SQL NULL。尽管此版本的方法setNull 用于用户定义的参数和REF 参数,但此方法可用于为任何 JDBC 类型设置空参数。以下是用户定义的类型:STRUCTDISTINCTJAVA_OBJECT,以及命名数组类型。

      笔记:为了便于移植,应用程序在指定 NULL 用户定义或 REF 参数时必须提供 SQL 类型代码和完全限定的 SQL 类型名称。在用户定义类型的情况下,名称是参数本身的类型名称。对于 REF 参数,名称是引用类型的类型名称。如果支持 JDBC 技术的驱动程序不需要类型代码或类型名称信息,它可能会忽略它。

      如果参数没有用户定义或 REF 类型,则忽略给定的 typeName 参数。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setNull 之后调用方法 getParams 将返回一个包含已设置的参数值的 Object 数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是 null 。第二个元素是为sql类型, 第三个元素是为typeName.参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果将第二个占位符参数设置为 null,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      sqlType - 来自 java.sql.Types 的值
      typeName - SQL 用户定义类型的完全限定名称,如果参数不是用户定义类型或 REF 值,则忽略该名称
      抛出:
      SQLException - 如果发生错误或给定参数索引超出范围
      参见:
    • setBoolean

      public void setBoolean(int parameterIndex, boolean x) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 boolean。驱动程序将它发送到数据库时将其转换为 SQL BIT 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setByte

      public void setByte(int parameterIndex, byte x) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 byte。驱动程序将其发送到数据库时将其转换为 SQL TINYINT 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setShort

      public void setShort(int parameterIndex, short x) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 short。驱动程序将它发送到数据库时将其转换为 SQL SMALLINT 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setInt

      public void setInt(int parameterIndex, int x) throws SQL异常
      将指定参数设置为 Java 编程语言中的 int。驱动程序将它发送到数据库时将其转换为 SQL INTEGER 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setLong

      public void setLong(int parameterIndex, long x) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 long。驱动程序将它发送到数据库时将其转换为 SQL BIGINT 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setFloat

      public void setFloat(int parameterIndex, float x) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 float。驱动程序将它发送到数据库时将其转换为 SQL FLOAT 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setDouble

      public void setDouble(int parameterIndex, double x) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 double。驱动程序将它发送到数据库时将其转换为 SQL DOUBLE 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setBigDecimal

      public void setBigDecimal(int parameterIndex, BigDecimal  x) throws SQL异常
      将指定参数设置为给定的 java.lang.BigDecimal 值。驱动程序将它发送到数据库时将其转换为 SQL NUMERIC 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setString

      public void setString(int parameterIndex, String  x) throws SQL异常
      将指定参数设置为给定的 String 值。驱动程序将它发送到数据库时将其转换为 SQL VARCHARLONGVARCHAR 值(取决于参数的大小相对于驱动程序对 VARCHAR 值的限制)。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setBytes

      public void setBytes(int parameterIndex, byte[] x) throws SQL异常
      将指定参数设置为给定的字节数组。驱动程序将它发送到数据库时将其转换为 SQL VARBINARYLONGVARBINARY 值(取决于参数的大小相对于驱动程序对 VARBINARY 值的限制)。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setDate

      public void setDate(int parameterIndex, Date  x) throws SQL异常
      将指定参数设置为给定的 java.sql.Date 值。驱动程序将它发送到数据库时将其转换为 SQL DATE 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setDate 之后调用方法 getParams 将返回一个数组,其中包含要为占位符参数编号设置的值参数索引作为第二个参数提供的 Date 对象。请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 参数值
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setTime

      public void setTime(int parameterIndex, Time  x) throws SQL异常
      将指定参数设置为给定的 java.sql.Time 值。驱动程序将它发送到数据库时将其转换为 SQL TIME 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的方法 setTime 后调用方法 getParams 将返回已设置的参数数组。参数占位符编号要设置的参数参数索引将是设置为该方法第二个参数的 Time 对象。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 一个 java.sql.Time 对象,将被设置为占位符参数的值参数索引
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setTimestamp

      public void setTimestamp(int parameterIndex, Timestamp  x) throws SQL异常
      将指定参数设置为给定的 java.sql.Timestamp 值。驱动程序将它发送到数据库时将其转换为 SQL TIMESTAMP 值。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setTimestamp 后调用方法 getParams 将返回一个数组,其中包含参数占位符编号的值参数索引作为此方法的第二个参数提供的 Timestamp 对象。请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 一个 java.sql.Timestamp 对象
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setAsciiStream

      public void setAsciiStream(int parameterIndex, InputStream  x, int length) throws SQL异常
      将指定参数设置为给定的 java.io.InputStream 对象,该对象将具有指定的字节数。流的内容将被读取并发送到数据库。如果读取并发送到数据库的字节数不等于此方法抛出一个 SQLException 对象length.

      当一个非常大的 ASCII 值输入到 LONGVARCHAR 参数时,通过 java.io.InputStream 对象发送它可能更实用。支持 JDBC 技术的驱动程序将根据需要从流中读取数据,直到它到达文件末尾。驱动程序将执行从 ASCII 到数据库 CHAR 格式的任何必要转换。

      笔记:这个流对象可以是标准的 Java 流对象,也可以是您自己实现标准接口的子类。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用 setAsciiStream 之后调用方法 getParams 将返回一个包含已设置参数值的数组。数组中表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 java.io.InputStream 对象。第二个元素是为length.第三个元素是一个内部 BaseRowSet 常量,指定传递给此方法的流是 ASCII 流。参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果设置的输入流是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 包含 ASCII 参数值的 Java 输入流
      length - 流中的字节数。这是驱动程序将发送到 DBMS 的字节数; 0 或更小的长度是未定义的,但会导致在底层 JDBC 驱动程序中抛出无效长度异常。
      抛出:
      SQLException - 如果发生错误,参数索引越界,或者连接到数据源时,驱动程序读取并发送到数据库的字节数不等于指定的字节数length
      参见:
    • setAsciiStream

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setAsciiStream 版本是否更有效。

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

      public void setBinaryStream(int parameterIndex, InputStream  x, int length) throws SQL异常
      将指定参数设置为给定的 java.io.InputStream 对象,该对象将具有指定的字节数。流的内容将被读取并发送到数据库。如果读取并发送到数据库的字节数不等于此方法抛出一个 SQLException 对象length.

      当一个非常大的二进制值输入到 LONGVARBINARY 参数时,通过 java.io.InputStream 对象发送它可能更实用。支持 JDBC 技术的驱动程序将根据需要从流中读取数据,直到它到达文件末尾。

      笔记:这个流对象可以是标准的 Java 流对象,也可以是您自己实现标准接口的子类。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用 setBinaryStream 之后调用方法 getParams 将返回一个包含已设置参数值的数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 java.io.InputStream 对象。第二个元素是为length.第三个元素是一个内部 BaseRowSet 常量,指定传递给此方法的流是二进制流。参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果设置的输入流是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 包含要设置的二进制值的输入流
      length - 流中的字节数; 0 或更小的长度是未定义的,但会导致在底层 JDBC 驱动程序中抛出无效长度异常。
      抛出:
      SQLException - 如果发生错误,参数索引越界,或者连接到数据源时,驱动程序读取并发送到数据库的字节数不等于指定的字节数length
      参见:
    • setBinaryStream

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setBinaryStream 版本是否更有效。

      参数:
      parameterIndex - 第一个参数是 1,第二个是 2,...
      x - 包含二进制参数值的 java 输入流
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 PreparedStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setUnicodeStream

      @Deprecated public void setUnicodeStream(int parameterIndex, InputStream  x, int length) throws SQL异常
      已弃用。
      应该使用 getCharacterStream 代替它
      将指定参数设置为给定的 java.io.InputStream 对象,该对象将具有指定的字节数。流的内容将被读取并发送到数据库。如果读取并发送到数据库的字节数不等于,此方法将抛出 SQLExceptionlength.

      当一个非常大的 Unicode 值输入到 LONGVARCHAR 参数时,通过 java.io.InputStream 对象发送它可能更实用。支持 JDBC 技术的驱动程序将根据需要从流中读取数据,直到它到达文件末尾。驱动程序将执行从 Unicode 到数据库 CHAR 格式的任何必要转换。 Unicode 流的字节格式必须是 Java UTF-8,如 Java 虚拟机规范中所定义。

      笔记:这个流对象可以是标准的 Java 流对象,也可以是您自己实现标准接口的子类。

      此方法已弃用; getCharacterStream 方法应该被用来代替它。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。在调用 setUnicodeStream 之后调用方法 getParams 将返回一个包含已设置参数值的数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 java.io.InputStream 对象。第二个元素是为length.第三个元素是内部 BaseRowSet 常量,指定传递给此方法的流是 Unicode 流。参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果设置的输入流是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 包含 UNICODE 参数值的 java.io.InputStream 对象
      length - 输入流中的字节数
      抛出:
      SQLException - 如果发生错误,参数索引越界,或者驱动程序读取并发送到数据库的字节数不等于指定的字节数length
      参见:
    • setCharacterStream

      public void setCharacterStream(int parameterIndex, Reader  reader, int length) throws SQL异常
      将指定参数设置为给定的 java.io.Reader 对象,该对象将具有指定的字符数。读取器的内容将被读取并发送到数据库。如果读取并发送到数据库的字节数不等于,此方法将抛出 SQLExceptionlength.

      当一个非常大的 Unicode 值输入到 LONGVARCHAR 参数时,通过 Reader 对象发送它可能更实用。支持 JDBC 技术的驱动程序将根据需要从流中读取数据,直到它到达文件末尾。驱动程序将执行从 Unicode 到数据库 CHAR 格式的任何必要转换。 Unicode 流的字节格式必须是 Java UTF-8,如 Java 虚拟机规范中所定义。

      笔记:这个流对象可以是标准的 Java 流对象,也可以是您自己实现标准接口的子类。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用 setCharacterStream 之后调用方法 getParams 将返回一个包含已设置参数值的数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 java.io.Reader 对象。第二个元素是为length.参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果要设置的读取器是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      reader - 包含 Unicode 数据的 Reader 对象
      length - 流中的字符数; 0 或更小的长度是未定义的,但会导致在底层 JDBC 驱动程序中抛出无效长度异常。
      抛出:
      SQLException - 如果发生错误,参数索引越界,或者连接到数据源时,驱动程序读取并发送到数据库的字节数不等于指定的字节数length
      参见:
    • setCharacterStream

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带有长度参数的 setCharacterStream 版本是否更有效。

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

      public void setObject(int parameterIndex, Object  x, int targetSqlType, int scale) throws SQL异常
      将指定参数设置为 Java 编程语言中的 Object。第二个参数必须是 Object 类型。对于整数值,应使用 java.lang 等效对象。例如,将类 Integer 用于 int

      驱动程序将此对象转换为指定的目标 SQL 类型,然后再将其发送到数据库。如果对象有自定义映射(属于实现 SQLData 的类),驱动程序应调用方法 SQLData.writeSQL 将对象写入 SQL 数据流。另一方面,如果对象属于实现 RefBlobClobStructArray 的类,则驱动程序应将其作为相应 SQL 类型的值传递给数据库。

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

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setObject 之后调用方法 getParams 将返回一个包含已设置的参数值的数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 Object 实例,第二个元素是为targetSql类型.第三个元素是为scale,如果正在设置的对象类型不是 java.sql.Types.NUMERICjava.sql.Types.DECIMAL ,驱动程序将忽略它。参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果要设置的对象是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 包含输入参数值的 Object;必须是 Object 类型
      targetSqlType - 要发送到数据库的 SQL 类型(在 java.sql.Types 中定义)。 scale 参数可以进一步限定此类型。如果非标准targetSql类型提供,此方法不会抛出 SQLException 。这允许对非标准 SQL 类型的隐式支持。
      scale - 对于类型 java.sql.Types.DECIMALjava.sql.Types.NUMERIC ,这是小数点后的位数。对于所有其他类型,此值将被忽略。
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setObject

      public void setObject(int parameterIndex, Object  x, int targetSqlType) throws SQL异常
      使用给定的 Object 值设置指定参数的值。此方法与 setObject(int parameterIndex, Object x, int targetSqlType, int scale) 类似,只是它假定比例为零。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setObject 之后调用方法 getParams 将返回一个包含已设置的参数值的数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 Object 实例。第二个元素是为targetSql类型.参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果要设置的对象是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 包含输入参数值的 Object;必须是 Object 类型
      targetSqlType - 要发送到数据库的 SQL 类型(在 java.sql.Types 中定义)。如果非标准targetSql类型提供,此方法不会抛出 SQLException 。这允许对非标准 SQL 类型的隐式支持。
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setObject

      public void setObject(int parameterIndex, Object  x) throws SQL异常
      将指定参数设置为 Java 编程语言中的 Object。第二个参数必须是 Object 类型。对于整数值,应使用 java.lang 等效对象。例如,将类 Integer 用于 int

      JDBC 规范定义了从 Java Object 类型到 SQL 类型的标准映射。驱动程序将使用此标准映射将给定对象转换为相应的 SQL 类型,然后再将其发送到数据库。如果对象有自定义映射(属于实现 SQLData 的类),驱动程序应调用方法 SQLData.writeSQL 将对象写入 SQL 数据流。

      另一方面,如果对象属于实现 RefBlobClobStructArray 的类,则驱动程序应将其作为相应 SQL 类型的值传递给数据库。

      如果存在歧义,例如,如果对象属于实现多个接口的类,则此方法会抛出异常。

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

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      调用此方法后,调用方法 getParams 将返回当前命令参数的对象数组,其中将包括占位符参数编号 parameterIndexObject 集。请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 包含输入参数值的对象
      抛出:
      SQLException - 如果发生错误参数索引超出范围,或者在被设置的对象的实现中存在歧义
      参见:
    • setRef

      public void setRef(int parameterIndex, Ref  ref) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 Ref 对象。驱动程序将其发送到数据库时将其转换为 SQL REF 值。在内部,Ref 表示为 SerialRef 以确保可序列化。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      调用此方法后,调用方法 getParams 将返回当前命令参数的对象数组,其中将包括为占位符参数编号 parameterIndex 设置的 Ref 对象集。请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      ref - 代表 SQL REF 值的 Ref 对象;不能为空
      抛出:
      SQLException - 如果发生错误;参数索引越界或Ref对象为null;或者 Ref 对象返回一个 null 基类型名称。
      参见:
    • setBlob

      public void setBlob(int parameterIndex, Blob  x) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 Blob 对象。驱动程序将它发送到数据库时将其转换为 SQL BLOB 值。在内部,Blob 表示为 SerialBlob 以确保可序列化。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。 executepopulate 等方法必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供。注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      调用此方法后,调用方法 getParams 将返回当前命令参数的对象数组,其中将包括为占位符参数编号 parameterIndex 设置的 Blob 对象集。请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 代表 SQL BLOB 值的 Blob 对象
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setClob

      public void setClob(int parameterIndex, Clob  x) throws SQL异常
      将指定参数设置为 Java 编程语言中给定的 Clob 对象。驱动程序将它发送到数据库时将其转换为 SQL CLOB 值。在内部,Clob 表示为 SerialClob 以确保可序列化。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      调用此方法后,调用方法 getParams 将返回当前命令参数的对象数组,其中将包括为占位符参数编号 parameterIndex 设置的 Clob 对象。请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 代表 SQL CLOB 值的 Clob 对象;不能为空
      抛出:
      SQLException - 如果发生错误;参数索引超出范围或 Clob 为空
      参见:
    • setArray

      public void setArray(int parameterIndex, Array  array) throws SQL异常
      将指定参数设置为 Java 编程语言中的 Array 对象。驱动程序将它发送到数据库时将其转换为 SQL ARRAY 值。在内部,Array 表示为 SerialArray 以确保可序列化。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      调用此方法后,调用方法 getParams 将返回当前命令参数的对象数组,其中将包括为占位符参数编号 parameterIndex 设置的 Array 对象集。请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引是元素号参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      array - 代表 SQL ARRAY 值的 Array 对象;不能为空。传递给此方法的 Array 对象必须为所有 getArray() 方法调用返回一个非空对象。空值将导致抛出 SQLException
      抛出:
      SQLException - 如果发生错误;参数索引超出范围或 ARRAY 为空
      参见:
    • setDate

      public void setDate(int parameterIndex, Date  x, Calendar  cal) throws SQL异常
      将指定参数设置为给定的 java.sql.Date 对象。当 DBMS 不存储时区信息时,驱动程序将使用给定的 Calendar 对象构造 SQL DATE 值以发送到数据库。使用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算日期。如果未指定 Calendar 对象,驱动程序将使用运行应用程序的虚拟机的时区。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setDate 之后调用方法 getParams 将返回一个包含已设置的参数值的数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 java.sql.Date 对象。第二个元素是为校准.参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果设置的日期是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 代表 SQL DATE 值的 java.sql.Date 对象
      cal - 构造日期时使用的 java.util.Calendar 对象
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setTime

      public void setTime(int parameterIndex, Time  x, Calendar  cal) throws SQL异常
      将指定参数设置为给定的 java.sql.Time 对象。驱动程序将它发送到数据库时将其转换为 SQL TIME 值。

      当 DBMS 不存储时区信息时,驱动程序将使用给定的 Calendar 对象构造 SQL TIME 值以发送到数据库。使用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算日期。如果未指定 Calendar 对象,驱动程序将使用运行应用程序的虚拟机的时区。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setTime 之后调用方法 getParams 将返回一个包含已设置的参数值的数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 java.sql.Time 对象。第二个元素是为校准.参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果设置的时间是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 一个 java.sql.Time 对象
      cal - 驱动程序可用于构造时间的 java.util.Calendar 对象
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • setTimestamp

      public void setTimestamp(int parameterIndex, Timestamp  x, Calendar  cal) throws SQL异常
      将指定参数设置为给定的 java.sql.Timestamp 对象。驱动程序将它发送到数据库时将其转换为 SQL TIMESTAMP 值。

      当 DBMS 不存储时区信息时,驱动程序将使用给定的 Calendar 对象构造 SQL TIMESTAMP 值以发送到数据库。使用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算时间戳。如果未指定 Calendar 对象,驱动程序将使用运行应用程序的虚拟机的时区。

      此方法设置的参数值存储在内部,并将在调用方法 execute 时作为此 RowSet 对象命令中的适当参数提供。必须在扩展此类并实现一个或多个标准 JSR-114 RowSet 接口的任何类中提供诸如 executepopulate 之类的方法。

      注意:JdbcRowSet 不需要 populate 方法,因为它在此类中未定义。

      在调用此版本的 setTimestamp 之后调用方法 getParams 将返回一个包含已设置的参数值的数组。在该数组中,表示使用此方法设置的值的元素本身就是一个数组。该数组的第一个元素是给定的 java.sql.Timestamp 对象。第二个元素是为校准.参数编号由元素在方法 getParams 返回的数组中的位置指示,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。换句话说,如果设置的时间戳是第二个占位符参数的值,则包含它的数组将是 getParams 返回的数组中的第二个元素。

      请注意,由于数组中元素的编号从零开始,因此对应于占位符参数编号的数组元素参数索引参数索引 -1.

      参数:
      parameterIndex - 此 RowSet 对象的命令中要设置的占位符参数的序号。第一个参数为1,第二个为2,以此类推;必须是 1 或更高
      x - 一个 java.sql.Timestamp 对象
      cal - 驱动程序可用于构建时间戳的 java.util.Calendar 对象
      抛出:
      SQLException - 如果发生错误或参数索引越界
      参见:
    • clearParameters

      public void clearParameters() throws SQL异常
      清除此 RowSet 对象在执行时在此 RowSet 对象的命令中设置的参数的内部表示中的所有当前参数值。

      通常,参数值在这个 RowSet 对象的命令中重复使用时仍然有效。使用 setter 方法设置参数值会自动清除指定参数的值并将其替换为新的指定值。

      此方法由 setCommand 方法在内部调用,以清除为上一个命令设置的所有参数。

      此外,此方法与 initParams 方法的不同之处在于它维护 RowSet 对象的架构。

      抛出:
      SQLException - 如果清除参数时发生错误
    • getParams

      public Object [] getParams() throws SQL异常
      检索包含已为此 RowSet 对象的命令设置的参数值(对象和基元)的数组,如果所有参数均未设置,则抛出 SQLException 对象。在将命令发送到要执行的 DBMS 之前,这些参数将替换 PreparedStatement 对象中的占位符参数,该对象是扩展 BaseRowSet 类的 RowSet 实现的命令。

      返回的数组中的每个元素都是一个 Object 实例,其中包含提供给 setter 方法的参数值。元素的顺序由提供的值决定参数索引.如果 setter 方法只接受参数索引和要设置的值(可能为 null),则数组元素将包含要设置的值(将表示为 Object )。如果有附加参数,则数组元素本身将是一个数组,其中包含要设置的值以及提供给 setter 方法的任何附加参数值。如果该方法设置了流,则数组元素包括提供给该方法的流类型。这些附加参数供驱动程序或 DBMS 使用,可以使用也可以不使用。

      注意:ArrayBlobClobRef 类型的存储参数值分别作为 SerialArraySerialBlobSerialClobSerialRef 返回。

      返回:
      Object 实例的数组,其中包括可以在此 RowSet 对象的命令中设置的参数值;如果没有设置参数,则为空数组
      抛出:
      SQLException - 如果检索此 RowSet 对象的参数对象数组时发生错误,或者如果未设置所有参数
    • setNull

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

      笔记:您必须指定参数的 SQL 类型。

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

      public void setNull(String  parameterName, int sqlType, String  typeName) throws SQL异常
      将指定参数设置为 SQL NULL。此版本的方法 setNull 应该用于用户定义类型和 REF 类型参数。用户定义类型的示例包括:STRUCT、DISTINCT、JAVA_OBJECT 和命名数组类型。

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

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

      public void setBoolean(String  parameterName, boolean x) throws SQL异常
      将指定参数设置为给定的 Java boolean 值。驱动程序将它发送到数据库时将其转换为 SQL BITBOOLEAN 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setByte

      public void setByte(String  parameterName, byte x) throws SQL异常
      将指定参数设置为给定的 Java byte 值。驱动程序将其发送到数据库时将其转换为 SQL TINYINT 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setShort

      public void setShort(String  parameterName, short x) throws SQL异常
      将指定参数设置为给定的 Java short 值。驱动程序将它发送到数据库时将其转换为 SQL SMALLINT 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setInt

      public void setInt(String  parameterName, int x) throws SQL异常
      将指定参数设置为给定的 Java int 值。驱动程序将它发送到数据库时将其转换为 SQL INTEGER 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setLong

      public void setLong(String  parameterName, long x) throws SQL异常
      将指定参数设置为给定的 Java long 值。驱动程序将它发送到数据库时将其转换为 SQL BIGINT 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setFloat

      public void setFloat(String  parameterName, float x) throws SQL异常
      将指定参数设置为给定的 Java float 值。驱动程序将它发送到数据库时将其转换为 SQL FLOAT 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setDouble

      public void setDouble(String  parameterName, double x) throws SQL异常
      将指定参数设置为给定的 Java double 值。驱动程序将它发送到数据库时将其转换为 SQL DOUBLE 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setBigDecimal

      public void setBigDecimal(String  parameterName, BigDecimal  x) throws SQL异常
      将指定参数设置为给定的 java.math.BigDecimal 值。驱动程序将它发送到数据库时将其转换为 SQL NUMERIC 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setString

      public void setString(String  parameterName, String  x) throws SQL异常
      将指定参数设置为给定的 Java String 值。驱动程序将它发送到数据库时将其转换为 SQL VARCHARLONGVARCHAR 值(取决于参数的大小相对于驱动程序对 VARCHAR 值的限制)。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setBytes

      public void setBytes(String  parameterName, byte[] x) throws SQL异常
      将指定参数设置为给定的 Java 字节数组。驱动程序将它发送到数据库时将其转换为 SQL VARBINARYLONGVARBINARY(取决于参数的大小相对于驱动程序对 VARBINARY 值的限制)。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setTimestamp

      public void setTimestamp(String  parameterName, Timestamp  x) throws SQL异常
      将指定参数设置为给定的 java.sql.Timestamp 值。驱动程序将它发送到数据库时将其转换为 SQL TIMESTAMP 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setAsciiStream

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

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

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

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

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      参数:
      parameterName - 参数名称
      reader - 包含用作指定参数的 UNICODE 数据的 java.io.Reader 对象
      length - 流中的字符数
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
    • setAsciiStream

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setAsciiStream 版本是否更有效。

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

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setBinaryStream 版本是否更有效。

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

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带有长度参数的 setCharacterStream 版本是否更有效。

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

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setNCharacterStream 版本是否更有效。

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

      public void setObject(String  parameterName, Object  x, int targetSqlType, int scale) throws SQL异常
      使用给定对象设置指定参数的值。第二个参数必须是对象类型;对于整数值,应使用 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_OBJECTNCHARNCLOBNVARCHARLONGNVARCHAR , REF , ROWID , SQLXMLSTRUCT 数据类型并且 JDBC 驱动程序不支持此数据类型
      参见:
    • setObject

      public void setObject(String  parameterName, Object  x, int targetSqlType) throws SQL异常
      使用给定对象设置指定参数的值。此方法与上面的方法setObject 类似,只是它假定比例为零。
      参数:
      parameterName - 参数名称
      x - 包含输入参数值的对象
      targetSqlType - 要发送到数据库的 SQL 类型(在 java.sql.Types 中定义)
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 targetSqlTypeARRAYBLOBCLOBDATALINKJAVA_OBJECTNCHARNCLOBNVARCHARLONGNVARCHAR , REF , ROWID , SQLXMLSTRUCT 数据类型并且 JDBC 驱动程序不支持此数据类型
      参见:
    • setObject

      public void setObject(String  parameterName, Object  x) throws SQL异常
      使用给定对象设置指定参数的值。第二个参数必须是 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 驱动程序不支持此方法
      参见:
    • setBlob

      public void setBlob(int parameterIndex, InputStream  inputStream, long length) throws SQL异常
      将指定参数设置为 InputStream 对象。 InputStream 必须包含长度指定的字符数,否则在执行 PreparedStatement 时将生成 SQLException。此方法不同于 setBinaryStream (int, InputStream, int) 方法,因为它通知驱动程序参数值应作为 BLOB 发送到服务。当使用 setBinaryStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGVARBINARYBLOB 发送到服务
      参数:
      parameterIndex - 第一个参数的索引是 1,第二个是 2,...
      inputStream - 包含要将参数值设置到的数据的对象。
      length - 参数数据中的字节数。
      抛出:
      SQLException - 如果发生数据库访问错误,则在关闭的 PreparedStatement 上调用此方法,如果 parameterIndex 不对应于 SQL 语句中的参数标记,如果指定的长度小于零,或者如果 InputStream 中的字节数确实如此与指定的长度不匹配。
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setBlob

      public void setBlob(int parameterIndex, InputStream  inputStream) throws SQL异常
      将指定参数设置为 InputStream 对象。此方法不同于 setBinaryStream (int, InputStream) 方法,因为它通知驱动程序参数值应作为 BLOB 发送到服务。当使用 setBinaryStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGVARBINARYBLOB 发送到服务

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setBlob 版本是否更有效。

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

      public void setBlob(String  parameterName, InputStream  inputStream, long length) throws SQL异常
      将指定参数设置为 InputStream 对象。 Inputstream必须包含长度指定的字符数,否则执行CallableStatement时将生成SQLException。此方法不同于 setBinaryStream (int, InputStream, int) 方法,因为它通知驱动程序参数值应作为 BLOB 发送到服务。当使用 setBinaryStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGVARBINARYBLOB 发送到服务
      参数:
      parameterName - 第二个要设置的参数名称是 2,...
      inputStream - 包含要将参数值设置到的数据的对象。
      length - 参数数据中的字节数。
      抛出:
      SQLException - 如果 parameterIndex 不对应于 SQL 语句中的参数标记,或者指定的长度小于零;如果 InputStream 中的字节数与指定长度不匹配;如果发生数据库访问错误或在关闭的CallableStatement上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setBlob

      public void setBlob(String  parameterName, Blob  x) throws SQL异常
      将指定参数设置为给定的 java.sql.Blob 对象。驱动程序将它发送到数据库时将其转换为 SQL BLOB 值。
      参数:
      parameterName - 参数名称
      x - 映射 SQL BLOB 值的 Blob 对象
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setBlob

      public void setBlob(String  parameterName, InputStream  inputStream) throws SQL异常
      将指定参数设置为 InputStream 对象。此方法不同于 setBinaryStream (int, InputStream) 方法,因为它通知驱动程序参数值应作为 BLOB 发送到服务。当使用 setBinaryStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGVARBINARYBLOB 发送到服务

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setBlob 版本是否更有效。

      参数:
      parameterName - 参数名称
      inputStream - 包含要将参数值设置到的数据的对象。
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setClob

      public void setClob(int parameterIndex, Reader  reader, long length) throws SQL异常
      将指定参数设置为 Reader 对象。读取器必须包含长度指定的字符数,否则在执行 PreparedStatement 时将生成 SQLException。此方法不同于 setCharacterStream (int, Reader, int) 方法,因为它通知驱动程序参数值应作为 CLOB 发送到服务。当使用 setCharacterStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGVARCHARCLOB 发送到服务
      参数:
      parameterIndex - 第一个参数的索引是 1,第二个是 2,...
      reader - 包含要将参数值设置到的数据的对象。
      length - 参数数据中的字符数。
      抛出:
      SQLException - 如果发生数据库访问错误,则在关闭的 PreparedStatement 上调用此方法,如果 parameterIndex 不对应于 SQL 语句中的参数标记,或者如果指定的长度小于零。
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setClob

      public void setClob(int parameterIndex, Reader  reader) throws SQL异常
      将指定参数设置为 Reader 对象。此方法不同于 setCharacterStream (int, Reader) 方法,因为它通知驱动程序参数值应作为 CLOB 发送到服务。当使用 setCharacterStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGVARCHARCLOB 发送到服务

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setClob 版本是否更有效。

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

      public void setClob(String  parameterName, Reader  reader, long length) throws SQL异常
      将指定参数设置为 Reader 对象。 reader 必须包含长度指定的字符数,否则在执行 CallableStatement 时将生成 SQLException。此方法不同于 setCharacterStream (int, Reader, int) 方法,因为它通知驱动程序参数值应作为 CLOB 发送到服务。当使用 setCharacterStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGVARCHARCLOB 发送到服务
      参数:
      parameterName - 要设置的参数名称
      reader - 包含要将参数值设置到的数据的对象。
      length - 参数数据中的字符数。
      抛出:
      SQLException - 如果 parameterIndex 不对应于 SQL 语句中的参数标记;如果指定的长度小于零;发生数据库访问错误或在关闭的CallableStatement上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setClob

      public void setClob(String  parameterName, Clob  x) throws SQL异常
      将指定参数设置为给定的 java.sql.Clob 对象。驱动程序将它发送到数据库时将其转换为 SQL CLOB 值。
      参数:
      parameterName - 参数名称
      x - 映射 SQL CLOB 值的 Clob 对象
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setClob

      public void setClob(String  parameterName, Reader  reader) throws SQL异常
      将指定参数设置为 Reader 对象。此方法不同于 setCharacterStream (int, Reader) 方法,因为它通知驱动程序参数值应作为 CLOB 发送到服务。当使用 setCharacterStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGVARCHARCLOB 发送到服务

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setClob 版本是否更有效。

      参数:
      parameterName - 参数名称
      reader - 包含要将参数值设置到的数据的对象。
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setDate

      public void setDate(String  parameterName, Date  x) throws SQL异常
      使用运行应用程序的虚拟机的默认时区将指定参数设置为给定的 java.sql.Date 值。驱动程序将它发送到数据库时将其转换为 SQL DATE 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setDate

      public void setDate(String  parameterName, Date  x, Calendar  cal) throws SQL异常
      使用给定的 Calendar 对象将指定参数设置为给定的 java.sql.Date 值。驱动程序使用 Calendar 对象构造 SQL DATE 值,然后驱动程序将其发送到数据库。使用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算日期。如果未指定 Calendar 对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
      参数:
      parameterName - 参数名称
      x - 参数值
      cal - 驱动程序将用于构建日期的 Calendar 对象
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setTime

      public void setTime(String  parameterName, Time  x) throws SQL异常
      将指定参数设置为给定的 java.sql.Time 值。驱动程序将它发送到数据库时将其转换为 SQL TIME 值。
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setTime

      public void setTime(String  parameterName, Time  x, Calendar  cal) throws SQL异常
      使用给定的 Calendar 对象将指定参数设置为给定的 java.sql.Time 值。驱动程序使用 Calendar 对象构造 SQL TIME 值,然后驱动程序将其发送到数据库。使用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算时间。如果未指定 Calendar 对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
      参数:
      parameterName - 参数名称
      x - 参数值
      cal - 驱动程序将用于构建时间的 Calendar 对象
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setTimestamp

      public void setTimestamp(String  parameterName, Timestamp  x, Calendar  cal) throws SQL异常
      使用给定的 Calendar 对象将指定参数设置为给定的 java.sql.Timestamp 值。驱动程序使用 Calendar 对象构造 SQL TIMESTAMP 值,然后驱动程序将其发送到数据库。使用 aa Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算时间戳。如果未指定 Calendar 对象,则驱动程序使用默认时区,即运行应用程序的虚拟机的时区。
      参数:
      parameterName - 参数名称
      x - 参数值
      cal - 驱动程序将用于构建时间戳的 Calendar 对象
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      参见:
    • setSQLXML

      public void setSQLXML(int parameterIndex, SQLXML  xmlObject) throws SQL异常
      将指定参数设置为给定的 java.sql.SQLXML 对象。驱动程序将其发送到数据库时将其转换为 SQL XML 值。
      参数:
      parameterIndex - 第一个参数的索引是 1,第二个是 2,...
      xmlObject - 映射 SQL XML 值的 SQLXML 对象
      抛出:
      SQLException - 如果发生数据库访问错误,则在关闭的结果集上调用此方法,java.xml.transform.ResultWriterOutputStream 尚未为 SQLXML 对象关闭,或者如果处理 XML 值时出错。异常的 getCause 方法可能会提供更详细的异常,例如,如果流不包含有效的 XML。
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setSQLXML

      public void setSQLXML(String  parameterName, SQLXML  xmlObject) throws SQL异常
      将指定参数设置为给定的 java.sql.SQLXML 对象。驱动程序将其发送到数据库时将其转换为 SQL XML 值。
      参数:
      parameterName - 参数名称
      xmlObject - 映射 SQL XML 值的 SQLXML 对象
      抛出:
      SQLException - 如果发生数据库访问错误,则在关闭的结果集上调用此方法,java.xml.transform.ResultWriterOutputStream 尚未为 SQLXML 对象关闭,或者如果处理 XML 值时出错。异常的 getCause 方法可能会提供更详细的异常,例如,如果流不包含有效的 XML。
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setRowId

      public void setRowId(int parameterIndex, RowId  x) throws SQL异常
      将指定参数设置为给定的 java.sql.RowId 对象。驱动程序将其发送到数据库时将其转换为 SQL ROWID
      参数:
      parameterIndex - 第一个参数是 1,第二个是 2,...
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setRowId

      public void setRowId(String  parameterName, RowId  x) throws SQL异常
      将指定参数设置为给定的 java.sql.RowId 对象。驱动程序将它发送到数据库时将其转换为 SQL ROWID
      参数:
      parameterName - 参数名称
      x - 参数值
      抛出:
      SQLException - 如果发生数据库访问错误
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNString

      public void setNString(int parameterIndex, String  value) throws SQL异常
      将指定参数设置为给定的 String 对象。驱动程序将它发送到数据库时将其转换为 SQL NCHARNVARCHARLONGNVARCHAR 值(取决于参数的大小相对于驱动程序对 NVARCHAR 值的限制)。
      参数:
      parameterIndex - 第一个参数是 1,第二个是 2,...
      value - 参数值
      抛出:
      SQLException - 如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;或者如果发生数据库访问错误
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNString

      public void setNString(String  parameterName, String  value) throws SQL异常
      将指定参数设置为给定的 String 对象。驱动程序将其转换为 SQL NCHARNVARCHARLONGNVARCHAR
      参数:
      parameterName - 要设置的列的名称
      value - 参数值
      抛出:
      SQLException - 如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;或者如果发生数据库访问错误
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNCharacterStream

      public void setNCharacterStream(int parameterIndex, Reader  value, long length) throws SQL异常
      将指定参数设置为 Reader 对象。 Reader 读取数据直到到达文件末尾。驱动程序执行从 Java 字符格式到数据库中国家字符集的必要转换。
      参数:
      parameterIndex - 第一个参数是 1,第二个是 2,...
      value - 参数值
      length - 参数数据中的字符数。
      抛出:
      SQLException - 如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;或者如果发生数据库访问错误
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNCharacterStream

      public void setNCharacterStream(String  parameterName, Reader  value, long length) throws SQL异常
      将指定参数设置为 Reader 对象。 Reader 读取数据直到到达文件末尾。驱动程序执行从 Java 字符格式到数据库中国家字符集的必要转换。
      参数:
      parameterName - 要设置的列的名称
      value - 参数值
      length - 参数数据中的字符数。
      抛出:
      SQLException - 如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;或者如果发生数据库访问错误
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNCharacterStream

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

      笔记:此流对象可以是标准 Java 流对象,也可以是您自己实现标准接口的子类。

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setNCharacterStream 版本是否更有效。

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

      public void setNClob(String  parameterName, NClob  value) throws SQL异常
      将指定参数设置为 java.sql.NClob 对象。该对象实现了 java.sql.NClob 接口。此 NClob 对象映射到 SQL NCLOB
      参数:
      parameterName - 要设置的列的名称
      value - 参数值
      抛出:
      SQLException - 如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;或者如果发生数据库访问错误
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNClob

      public void setNClob(String  parameterName, Reader  reader, long length) throws SQL异常
      将指定参数设置为 Reader 对象。 reader 必须包含长度指定的字符数,否则在执行 CallableStatement 时将生成 SQLException。此方法不同于 setCharacterStream (int, Reader, int) 方法,因为它通知驱动程序参数值应作为 NCLOB 发送到服务。当使用 setCharacterStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGNVARCHARNCLOB 发送到服务
      参数:
      parameterName - 要设置的参数名称
      reader - 包含要将参数值设置到的数据的对象。
      length - 参数数据中的字符数。
      抛出:
      SQLException - 如果 parameterIndex 不对应于 SQL 语句中的参数标记;如果指定的长度小于零;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误或在关闭的CallableStatement上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNClob

      public void setNClob(String  parameterName, Reader  reader) throws SQL异常
      将指定参数设置为 Reader 对象。此方法不同于 setCharacterStream (int, Reader) 方法,因为它通知驱动程序参数值应作为 NCLOB 发送到服务。当使用 setCharacterStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGNVARCHARNCLOB 发送到服务

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setNClob 版本是否更有效。

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

      public void setNClob(int parameterIndex, Reader  reader, long length) throws SQL异常
      将指定参数设置为 Reader 对象。读取器必须包含长度指定的字符数,否则在执行 PreparedStatement 时将生成 SQLException。此方法不同于 setCharacterStream (int, Reader, int) 方法,因为它通知驱动程序参数值应作为 NCLOB 发送到服务。当使用 setCharacterStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGNVARCHARNCLOB 发送到服务
      参数:
      parameterIndex - 第一个参数的索引是 1,第二个是 2,...
      reader - 包含要将参数值设置到的数据的对象。
      length - 参数数据中的字符数。
      抛出:
      SQLException - 如果 parameterIndex 不对应于 SQL 语句中的参数标记;如果指定的长度小于零;如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;如果发生数据库访问错误或在关闭的PreparedStatement上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNClob

      public void setNClob(int parameterIndex, NClob  value) throws SQL异常
      将指定参数设置为 java.sql.NClob 对象。驱动程序在将它发送到数据库时转换此 oa SQL NCLOB 值。
      参数:
      parameterIndex - 第一个参数是 1,第二个是 2,...
      value - 参数值
      抛出:
      SQLException - 如果驱动程序不支持国家字符集;如果驱动程序可以检测到可能发生数据转换错误;或者如果发生数据库访问错误
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
      自从:
      1.6
    • setNClob

      public void setNClob(int parameterIndex, Reader  reader) throws SQL异常
      将指定参数设置为 Reader 对象。此方法不同于 setCharacterStream (int, Reader) 方法,因为它通知驱动程序参数值应作为 NCLOB 发送到服务。当使用 setCharacterStream 方法时,驱动程序可能必须做额外的工作来确定参数数据是否应该作为 LONGNVARCHARNCLOB 发送到服务

      笔记:请查阅您的 JDBC 驱动程序文档以确定使用带长度参数的 setNClob 版本是否更有效。

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

      public void setURL(int parameterIndex, URL  x) throws SQL异常
      将指定参数设置为给定的 java.net.URL 值。驱动程序将它发送到数据库时将其转换为 SQL DATALINK 值。
      参数:
      parameterIndex - 第一个参数是 1,第二个是 2,...
      x - 要设置的 java.net.URL 对象
      抛出:
      SQLException - 如果发生数据库访问错误或在关闭的 PreparedStatement 上调用此方法
      SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法