模块  java.sql.rowset
软件包  javax.sql.rowset

Class BaseRowSet

  • 实现的所有接口
    SerializableCloneable

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

    1.0概述

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

    BaseRowSet类提供以下内容:

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

    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接口提供的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对象作为命令参数,存储这些值作为SerialArraySerialClobSerialBlobSerialRef分别对象。

    4.0幕后参数的处理

    注意: BaseRowSet类提供两种setter方法,即设置属性的方法和设置占位符参数的方法。 本节中讨论的setter方法是设置占位符参数的方法。

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

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

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

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

    某些方法(如setObjectsetDate具有两个以上参数的版本,其他参数为驱动程序或DBMS提供信息。 例如,该方法setDatesetTime ,和setTimestamp可以采取Calendar对象作为其第三个参数。 如果DBMS不存储时区信息时,驱动程序使用Calendar对象构造DateTime ,或Timestamp对象被设置。 与提供附加信息的其他方法一样, getParams返回的数组中的元素是一个数组而不是一个简单的Object实例。

    方法setAsciiStreamsetBinaryStreamsetCharacterStream ,和setUnicodeStream (其已过时,所以应用程序应使用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
    • 具有可滚动的游标,不显示其他人所做的更改。
    • 可以更新。
    • 不显示已删除的行。
    • 没有时间限制驱动程序执行RowSet对象命令所需的时间。
    • 它可能包含的行数没有限制。
    • 对列可能包含的字节数没有限制。 注:此限制仅适用于持有下列类型的值列: BINARYVARBINARYLONGVARBINARYCHARVARCHARLONGVARCHAR
    • 不会看到未提交的数据(进行“脏”读取)。
    • 已启用转义处理。
    • 其连接的类型映射设置为null
    • 有一个空的Vector对象,用于存储RowSet对象命令中占位符参数的值。

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

      crs.setMaxRows(500); 
    在此BaseRowSet类的扩展中实现的方法必须抛出SQLException对象,以防止违反已定义的断言。 此外,如果扩展类重写并重新实现任何BaseRowSet方法并遇到连接或基础数据源问题,则该方法可能另外抛出SQLException对象。
    从以下版本开始:
    1.5
    另请参见:
    Serialized Form
    • 字段汇总

      字段  
      变量和类型 字段 描述
      static int ASCII_STREAM_PARAM
      一个常量,指示 RowSetReaderImpl对象的给定参数是ASCII流。
      protected InputStream asciiStream
      将由方法 getAsciiStream返回的 InputStream对象,该对象在 ResultSet接口中指定。
      static int BINARY_STREAM_PARAM
      一个常量,指示 RowSetReaderImpl对象给定参数是二进制流。
      protected InputStream binaryStream
      将由方法 getBinaryStream返回的 InputStream对象,该对象在 ResultSet接口中指定。
      protected Reader charStream
      将由方法 getCharacterStream返回的 Reader对象,该对象在 ResultSet接口中指定。
      static int UNICODE_STREAM_PARAM
      一个常量,指示 RowSetReaderImpl对象的给定参数是Unicode流。
      protected InputStream unicodeStream
      将由方法 getUnicodeStream返回的 InputStream对象,该对象在 ResultSet接口中指定。
    • 构造方法摘要

      构造方法  
      构造器 描述
      BaseRowSet()
      构造一个新的 BaseRowSet对象,该对象使用其 listeners字段的默认 Vector对象进行初始化。
    • 方法摘要

      所有方法  实例方法 具体的方法  弃用的方法 
      变量和类型 方法 描述
      void addRowSetListener​(RowSetListener listener)
      只要在此 RowSet对象上发生事件,就会通知侦听器。
      void clearParameters()
      清除此 RowSet对象在执行此 RowSet时在此 RowSet对象命令中设置的参数的内部表示中的所有当前参数值。
      String getCommand()
      检索作为此 RowSet对象的命令的SQL查询。
      int getConcurrency()
      返回此 RowSet对象的并发性。
      String getDataSourceName()
      返回提供给使用Java命名和目录接口(JNDI)API的命名服务时将检索 javax.sql.DataSource对象的逻辑名称。
      boolean getEscapeProcessing()
      确定是否为此 RowSet对象启用了转义处理。
      int getFetchDirection()
      检索此 RowSet对象的获取方向的当前设置。
      int getFetchSize()
      返回此 RowSet对象的提取大小。
      int getMaxFieldSize()
      检索此 RowSet对象中可用于列值的最大字节数。
      int getMaxRows()
      检索此 RowSet对象可能包含的最大行数。
      Object[] getParams()
      检索包含已为此 RowSet对象命令设置的参数值(对象和基元)的 SQLException如果尚未设置所有参数,则抛出 SQLException对象。
      String getPassword()
      返回用于为此 RowSet对象创建数据库连接的密码。
      int getQueryTimeout()
      检索驱动程序等待查询执行的最大秒数。
      boolean getShowDeleted()
      检索 boolean指示标记为删除的行是否出现在当前行集中。
      int getTransactionIsolation()
      返回此 RowSet对象连接的事务隔离属性。
      int getType()
      返回此 RowSet对象的类型。
      Map<String,​<?>> getTypeMap()
      检索与该关联的类型映射 Connection对象此 RowSet对象。
      String getUrl()
      检索此 RowSet对象的 javax.sql.Reader对象用于使用支持JDBC技术的驱动程序与关系数据库建立连接的JDBC URL。
      String getUsername()
      返回用于创建数据库连接的用户名。
      protected void initParams()
      执行必要的内部配置和初始化,以允许任何JDBC RowSet实现开始使用 BaseRowSet实例提供的标准工具。
      boolean isReadOnly()
      返回 boolean指示此 RowSet对象是否为只读。
      protected void notifyCursorMoved()
      通知使用此 RowSet对象注册的所有侦听器,其光标已移动。
      protected void notifyRowChanged()
      通知在此 RowSet对象中注册的所有侦听器,其中一行已更改。
      protected void notifyRowSetChanged()
      通知使用此 RowSet对象注册的所有侦听器,其全部内容已更改。
      void removeRowSetListener​(RowSetListener listener)
      从此 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 setCommand​(String cmd)
      将此 RowSet对象的 command属性设置为给定的 String对象,并清除为上一个命令设置的参数(如果有)。
      void setConcurrency​(int concurrency)
      将此 RowSet对象的并发性设置为指定的并发。
      void setDataSourceName​(String name)
      将此 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 setPassword​(String pass)
      将用于为此 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 setTransactionIsolation​(int level)
      将此JDBC RowSet对象的事务隔离属性设置为给定常量。
      void setType​(int type)
      将此 RowSet对象的类型设置为指定的类型。
      void setTypeMap​(Map<String,​<?>> map)
      安装给定的 java.util.Map对象作为与相关联的类型映射 Connection对象此 RowSet对象。
      void setUnicodeStream​(int parameterIndex, InputStream x, int length)
      已过时。
      应该使用getCharacterStream代替它
      void setUrl​(String url)
      将此 RowSet对象的Url属性设置为给定的 String对象,并将dataSource name属性设置为 null
      void setURL​(int parameterIndex, URL x)
      将指定参数设置为给定的 java.net.URL值。
      void setUsername​(String name)
      将此 RowSet对象的username属性设置为给定的用户名。
    • 字段详细信息

      • 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
        将由方法 getBinaryStream返回的 InputStream对象,该对象在 ResultSet接口中指定。
      • unicodeStream

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

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

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

      • BaseRowSet

        public BaseRowSet()
        构造一个新的BaseRowSet对象,该对象使用默认的Vector对象为其listeners字段初始化。 初始化的其他默认值列在此类的类注释的第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(javax.sql.RowSetListener)
      • removeRowSetListener

        public void removeRowSetListener​(RowSetListener listener)
        从此RowSet对象的侦听器列表中删除指定的对象。 如果给定的参数不是已注册的侦听器,则此方法不执行任何操作。 注意 :如果RowSetListener对象为null ,则此方法将以静默方式丢弃null值。
        参数
        listener -一个 RowSetListener对象是听众的名单上此 RowSet对象
        另请参见:
        addRowSetListener(javax.sql.RowSetListener)
      • notifyCursorMoved

        protected void notifyCursorMoved()
                                  throws SQLException
        通知使用此RowSet对象注册的所有侦听器,其光标已移动。

        当应用程序调用方法移动光标时,该方法移动光标,然后在内部调用此方法。 应用程序永远不应直接调用此方法。

        异常
        SQLException - 如果扩展 BaseRowSet抽象类的类未实现 RowSet接口或其中一个子接口。
      • notifyRowChanged

        protected void notifyRowChanged()
                                 throws SQLException
        通知使用此RowSet对象注册的所有侦听器,其中一行已更改。

        当应用程序调用发生改变的行,如一个方法CachedRowSet方法insertRowupdateRow ,或deleteRow ,该方法调用notifyRowChanged内部。 应用程序永远不应直接调用此方法。

        异常
        SQLException - 如果扩展 BaseRowSet抽象类的类未实现 RowSet接口或其中一个子接口。
      • notifyRowSetChanged

        protected void notifyRowSetChanged()
                                    throws SQLException
        通知使用此RowSet对象注册的所有侦听器,其全部内容已更改。

        当应用程序调用该改变的全部内容的方法RowSet对象,如CachedRowSet方法executepopulaterestoreOriginal ,或release ,该方法调用notifyRowSetChanged内部(直接或间接)。 应用程序永远不应直接调用此方法。

        异常
        SQLException - 如果扩展 BaseRowSet抽象类的类未实现 RowSet接口或其中一个子接口。
      • getCommand

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

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

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

        command属性的默认值为null

        结果
        String是该RowSet对象的command属性的值; 可能是null
        另请参见:
        setCommand(java.lang.String)
      • setCommand

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

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

        参数
        cmd - 包含SQL查询的String对象,该查询将设置为此RowSet对象的命令属性; 可能是null但可能不是空字符串
        异常
        SQLException - 如果提供空字符串作为命令值
        另请参见:
        getCommand()
      • getUrl

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

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

        结果
        String对象,包含用于为此RowSet对象建立连接的JDBC URL; 如果未设置,则可能是null (默认值)
        异常
        SQLException - 如果检索到URL值时发生错误
        另请参见:
        setUrl(java.lang.String)
      • setUrl

        public void setUrl​(String url)
                    throws SQLException
        将此RowSet对象的Url属性设置为给定的String对象,并将dataSource name属性设置为null Url属性是JDBC URL,在使用支持JDBC技术的驱动程序(“JDBC驱动程序”)和DriverManager创建连接时使用。 可以在驱动程序文档中找到要使用的特定驱动程序的正确JDBC URL。 虽然有关于如何形成JDBC URL的指导原则,但驱动程序供应商可以指定任何String对象,但长度为0 (空字符串)的对象除外。

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

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

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

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

        结果
        String对象,标识用于建立连接的DataSource对象; 如果未设置逻辑名称,则返回null
        另请参见:
        setDataSourceName(java.lang.String)
      • setDataSourceName

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        结果
        以下常数之一: Connection.TRANSACTION_NONEConnection.TRANSACTION_READ_UNCOMMITTEDConnection.TRANSACTION_READ_COMMITTEDConnection.TRANSACTION_REPEATABLE_READ ,或 Connection.TRANSACTION_SERIALIZABLE
        另请参见:
        SyncFactorySyncProvidersetTransactionIsolation(int)
      • setTransactionIsolation

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

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

        参数
        level -一个以下常量,以升序列出: Connection.TRANSACTION_NONEConnection.TRANSACTION_READ_UNCOMMITTEDConnection.TRANSACTION_READ_COMMITTEDConnection.TRANSACTION_REPEATABLE_READ ,或 Connection.TRANSACTION_SERIALIZABLE
        异常
        SQLException - 如果给定参数不是连接常量之一
        另请参见:
        SyncFactorySyncProvidergetTransactionIsolation()
      • getTypeMap

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

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

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

        结果
        java.util.Map对象,它是此 RowSet对象连接的类型映射
      • setTypeMap

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

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

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

        public int getMaxRows()
                       throws SQLException
        检索此RowSet对象可能包含的最大行数。 如果超出此限制,则会以静默方式删除多余的行。
        结果
        int表示当前的最大行数; 零意味着没有限制
        异常
        SQLException - 如果在内部发生错误,则确定 Rowset对象可以包含的行的最大限制
      • setMaxRows

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

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

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

        参数
        enable - true启用转义处理; false来禁用它
        异常
        SQLException - 如果发生错误,则设置基础JDBC技术启用的驱动程序以处理转义语法
      • getQueryTimeout

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

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

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

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

        结果
        true如果删除的行可见; 否则为false
        异常
        SQLException - 如果发生错误,确定删除的行是否可见
        另请参见:
        setShowDeleted(boolean)
      • setShowDeleted

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

        public boolean getEscapeProcessing()
                                    throws SQLException
        确定是否为此 RowSet对象启用了转义处理。
        结果
        true如果true转义处理; 否则为false
        异常
        SQLException - 如果发生错误,确定是否启用了转义处理,或者是否尚未启用内部转义处理触发器
      • setFetchDirection

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

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

        仅当使用JDBC驱动程序将数据连接到数据库时,此方法才适用于RowSet对象。

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

        参数
        direction -一 ResultSet.FETCH_FORWARDResultSet.FETCH_REVERSE ,或 ResultSet.FETCH_UNKNOWN
        异常
        SQLException - 如果(1) RowSet类型为 TYPE_FORWARD_ONLY且给定的获取方向不是 FETCH_FORWARD或(2)给定的获取方向不是以下之一:ResultSet.FETCH_FORWARD,ResultSet.FETCH_REVERSE或ResultSet.FETCH_UNKNOWN
        另请参见:
        getFetchDirection()
      • getFetchDirection

        public int getFetchDirection()
                              throws SQLException
        检索此RowSet对象的获取方向的当前设置。 默认类型为ResultSet.FETCH_FORWARD
        结果
        之一 ResultSet.FETCH_FORWARDResultSet.FETCH_REVERSE ,或 ResultSet.FETCH_UNKNOWN
        异常
        SQLException - 如果在确定用于获取行的当前获取方向时发生错误
        另请参见:
        setFetchDirection(int)
      • setFetchSize

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

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

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

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

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

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

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

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

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

        结果
        RowSet对象的并发类型,必须是以下之一: ResultSet.CONCUR_READ_ONLYResultSet.CONCUR_UPDATABLE
        异常
        SQLException - 如果发生此错误并获得此 RowSet对象的并发性
        另请参见:
        setConcurrency(int)isReadOnly()
      • setNull

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

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

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是parameterIndex -1。

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

        public void setNull​(int parameterIndex,
                            int sqlType,
                            String typeName)
                     throws SQLException
        将指定参数设置为SQL NULL 虽然此方法setNull版本适用于用户定义和REF参数,但此方法可用于为任何JDBC类型设置null参数。 下面是用户定义的类型: STRUCTDISTINCT ,和JAVA_OBJECT ,和指定数组类型。

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

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

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是parameterIndex -1。

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

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setByte

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setShort

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setInt

        public void setInt​(int parameterIndex,
                           int x)
                    throws SQLException
        使用Java编程语言将指定参数设置为int 驱动程序在将其发送到数据库时将其转换为SQL INTEGER值。

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setLong

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

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

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

        参数
        parameterIndex - 要在此RowSet对象的命令中设置占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setFloat

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setDouble

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setBigDecimal

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setString

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setBytes

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setDate

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

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

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

        该方法进行的呼叫getParams这个版本的后setDate被称为将返回的数组与值为占位符参数编号parameterIndex作为被设置Date作为第二个参数提供的对象。 请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是parameterIndex -1。

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 参数值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setTime

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

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是parameterIndex -1。

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 一个 java.sql.Time对象,它将被设置为占位符参数 parameterIndex的值
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setTimestamp

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

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

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

        该方法进行的呼叫getParams这个版本的后setTimestamp被称为将返回一个阵列具有用于参数占位符编号parameterIndex是所述值Timestamp这是供给作为第二个参数,以这种方法的对象。 请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是parameterIndex -1。

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 一个 java.sql.Timestamp对象
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setAsciiStream

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

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

        注意:此流对象可以是标准Java流对象,也可以是实现标准接口的子类。

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是元素编号parameterIndex -1。

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

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

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

        注意:请参阅JDBC驱动程序文档以确定使用带有length参数的setAsciiStream版本是否更有效。

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

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

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

        注意:此流对象可以是标准Java流对象,也可以是实现标准接口的子类。

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是元素编号parameterIndex -1。

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

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

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

        注意:请参阅JDBC驱动程序文档,以确定使用带有length参数的setBinaryStream版本是否更有效。

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

        @Deprecated
        public void setUnicodeStream​(int parameterIndex,
                                     InputStream x,
                                     int length)
                              throws SQLException
        Deprecated.
        getCharacterStream should be used in its place
        将指定参数设置为给定的java.io.InputStream对象,该对象具有指定的字节数。 将读取流的内容并将其发送到数据库。 如果读取和发送到数据库的字节数不等于length,则此方法抛出SQLException

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

        注意:此流对象可以是标准Java流对象,也可以是实现标准接口的子类。

        不推荐使用此方法; 应该使用方法getCharacterStream代替它。

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是元素编号parameterIndex -1。

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 包含UNICODE参数值的 java.io.InputStream对象
        length - 输入流中的字节数
        异常
        SQLException - 如果发生错误,则参数索引超出范围,或者驱动程序读取和发送到数据库的字节数不等于 长度指定的字节数
        另请参见:
        getParams()
      • setCharacterStream

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

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

        注意:此流对象可以是标准Java流对象,也可以是实现标准接口的子类。

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

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

        该方法进行的呼叫getParamssetCharacterStream已被调用将返回包含已设定的参数值的数组。 在该数组中,表示使用此方法设置的值的元素本身就是一个数组。 该数组的第一个元素是给定的java.io.Reader对象。 第二个元素是为长度设置的值。 参数号由方法getParams返回的数组中元素的位置getParams ,第一个元素是第一个占位符参数的值,第二个元素是第二个占位符参数的值,依此类推。 换句话说,如果设置的reader是第二个占位符参数的值,则包含它的数组将是getParams返回的数组中的第二个元素。

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是元素编号parameterIndex -1。

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

        public 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
      • setObject

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

        在将此对象发送到数据库之前,驱动程序将此对象转换为指定的目标SQL类型。 如果对象具有自定义映射(属于实现SQLData的类),则驱动程序应调用方法SQLData.writeSQL将对象写入SQL数据流。 如果,在另一方面,对象是实现一类的RefBlobClobStruct ,或Array ,驾驶员应把它传递给数据库作为相应SQL类型的值。

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

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是元素编号parameterIndex -1。

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

        public void setObject​(int parameterIndex,
                              Object x,
                              int targetSqlType)
                       throws SQLException
        使用给定的Object值设置指定参数的值。 此方法类似于setObject(int parameterIndex, Object x, int targetSqlType, int scale)但它假定比例为零。

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是元素编号parameterIndex -1。

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

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

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

        如果,在另一方面,对象是实现一类的RefBlobClobStruct ,或Array ,驾驶员应把它传递给数据库作为相应SQL类型的值。

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

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

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

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

        此方法被调用后,向方法的调用getParams将返回电流指令参数,其将包括对象数组Object为占位符参数数集parameterIndex 请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是元素编号parameterIndex -1。

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

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

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        ref - 表示SQL REF值的Ref对象; 不能为空
        异常
        SQLException - 如果发生错误; 参数索引超出范围或者Ref对象是null ; Ref对象返回null基本类型名称。
        另请参见:
        getParams()SerialRef
      • setBlob

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

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

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

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 表示SQL BLOB值的 Blob对象
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()SerialBlob
      • setClob

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是parameterIndex -1。

        参数
        parameterIndex - 要设置的此RowSet对象命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 表示SQL DATE值的 java.sql.Date对象
        cal - 构造日期时使用的 java.util.Calendar对象
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • setTime

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

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

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是parameterIndex -1。

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

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

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

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

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

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

        请注意,因为数组中元素的编号从零开始,所以与占位符参数编号parameterIndex对应的数组元素是parameterIndex -1。

        参数
        parameterIndex - 要设置的此RowSet对象的命令中占位符参数的序号。 第一个参数是1,第二个参数是2,依此类推; 必须是1或更高
        x - 一个 java.sql.Timestamp对象
        cal - 驱动程序可用于构造时间戳的 java.util.Calendar对象
        异常
        SQLException - 如果发生错误或参数索引超出范围
        另请参见:
        getParams()
      • clearParameters

        public void clearParameters()
                             throws SQLException
        在执行此RowSet对象的命令时,清除此RowSet对象的内部参数值中的所有当前参数值。

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

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

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

        异常
        SQLException - 如果清除参数时发生错误
      • getParams

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

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

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

        结果
        一个Object实例的数组,包含可在此RowSet对象命令中设置的参数值; 如果没有设置参数,则为空数组
        异常
        SQLException - 如果在检索此 RowSet对象的参数的对象数组时发生错误,或者如果未设置所有参数
      • setNull

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

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

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

        public 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驱动程序不支持此方法
      • setBoolean

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

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

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

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

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

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

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

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

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

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

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

        public 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驱动程序不支持此方法
      • setBinaryStream

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

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

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

        public 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驱动程序不支持此方法
      • setAsciiStream

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

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

        注意:请参阅JDBC驱动程序文档,以确定使用带有length参数的setAsciiStream版本是否更有效。

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

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

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

        注意:请参阅JDBC驱动程序文档,以确定使用带有length参数的setBinaryStream版本是否更有效。

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

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

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

        注意:请参阅JDBC驱动程序文档,以确定使用带有length参数的setCharacterStream版本是否更有效。

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

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

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

        注意:请参阅JDBC驱动程序文档以确定使用带有length参数的setNCharacterStream版本是否更有效。

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

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

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

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

        参数
        parameterName - 参数的名称
        x - 包含输入参数值的对象
        targetSqlType - 要发送到数据库的SQL类型(在java.sql.Types中定义)。 scale参数可以进一步限定此类型。
        scale - 对于java.sql.Types.DECIMAL或java.sql.Types.NUMERIC类型,这是小数点后的位数。 对于所有其他类型,将忽略此值。
        异常
        SQLException - 如果发生数据库访问错误或在关闭的 CallableStatement上调用此方法
        SQLFeatureNotSupportedException -如果 targetSqlTypeARRAYBLOBCLOBDATALINKJAVA_OBJECTNCHARNCLOBNVARCHARLONGNVARCHARREFROWIDSQLXMLSTRUCT数据类型和JDBC驱动程序不支持此数据类型
        另请参见:
        TypesgetParams()
      • setObject

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

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

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

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

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

        参数
        parameterName - 参数的名称
        x - 包含输入参数值的对象
        异常
        SQLException - 如果发生数据库访问错误,则在关闭的 CallableStatement上调用此方法,或者如果给定的 Object参数不明确
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        另请参见:
        getParams()
      • setBlob

        public void setBlob​(int parameterIndex,
                            InputStream inputStream,
                            long length)
                     throws SQLException
        将指定参数设置为InputStream对象。 InputStream必须包含由length指定的字符数,否则在执行SQLException将生成PreparedStatement 此方法与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 SQLException
        将指定参数设置为InputStream对象。 此方法与setBinaryStream (int, InputStream)方法不同,因为它通知驱动程序参数值应作为BLOB发送到服务器。 使用setBinaryStream方法时,驱动程序可能需要做额外的工作来确定参数数据是否应作为LONGVARBINARYBLOB发送到服务器

        注意:请参阅JDBC驱动程序文档以确定使用带有length参数的setBlob版本是否更有效。

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

        public void setBlob​(String parameterName,
                            InputStream inputStream,
                            long length)
                     throws SQLException
        将指定参数设置为InputStream对象。 Inputstream必须包含由length指定的字符数,否则在执行SQLException将生成CallableStatement 此方法与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 SQLException
        将指定参数设置为给定的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 SQLException
        将指定参数设置为InputStream对象。 此方法与setBinaryStream (int, InputStream)方法不同,因为它通知驱动程序参数值应作为BLOB发送到服务器。 使用setBinaryStream方法时,驱动程序可能需要做额外的工作来确定参数数据是否应作为LONGVARBINARYBLOB发送到服务器

        注意:请参阅JDBC驱动程序文档,以确定使用带有length参数的setBlob版本是否更有效。

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

        public void setClob​(int parameterIndex,
                            Reader reader,
                            long length)
                     throws SQLException
        将指定参数设置为Reader对象。 阅读器必须包含由length指定的字符数,否则在执行SQLException将生成PreparedStatement 此方法与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 SQLException
        将指定参数设置为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 SQLException
        将指定参数设置为Reader对象。 reader必须包含由length指定的字符数,否则在执行SQLException将生成CallableStatement 此方法与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 SQLException
        将指定参数设置为给定的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 SQLException
        将指定参数设置为Reader对象。 此方法与setCharacterStream (int, Reader)方法不同,因为它通知驱动程序参数值应作为CLOB发送到服务器。 使用setCharacterStream方法时,驱动程序可能需要做额外的工作来确定参数数据是否应作为LONGVARCHARCLOB发送到服务器

        注意:请参阅JDBC驱动程序文档,以确定使用带有length参数的setClob版本是否更有效。

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

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

        public 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驱动程序不支持此方法
        另请参见:
        getParams()
      • setTime

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

        public 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驱动程序不支持此方法
        另请参见:
        getParams()
      • setTimestamp

        public 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驱动程序不支持此方法
        另请参见:
        getParams()
      • setSQLXML

        public void setSQLXML​(int parameterIndex,
                              SQLXML xmlObject)
                       throws SQLException
        将指定参数设置为给定的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 SQLException
        将指定参数设置为给定的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 SQLException
        将指定参数设置为给定的java.sql.RowId对象。 驱动程序将其发送到数据库时将其转换为SQL ROWID
        参数
        parameterIndex - 第一个参数是1,第二个参数是2,...
        x - 参数值
        异常
        SQLException - 如果发生数据库访问错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.6
      • setRowId

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

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

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

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

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

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

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

        注意:请参阅JDBC驱动程序文档,以确定使用带有length参数的setNCharacterStream版本是否更有效。

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

        public void setNClob​(String parameterName,
                             NClob value)
                      throws SQLException
        将指定参数设置为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 SQLException
        将指定参数设置为Reader对象。 reader必须包含由length指定的字符数,否则在执行SQLException将生成CallableStatement 此方法与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 SQLException
        将指定参数设置为Reader对象。 此方法与setCharacterStream (int, Reader)方法不同,因为它通知驱动程序参数值应作为NCLOB发送到服务器。 使用setCharacterStream方法时,驱动程序可能需要做额外的工作来确定参数数据是否应作为LONGNVARCHARNCLOB发送到服务器

        注意:请参阅JDBC驱动程序文档,以确定使用带有length参数的setNClob版本是否更有效。

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

        public void setNClob​(int parameterIndex,
                             Reader reader,
                             long length)
                      throws SQLException
        将指定参数设置为Reader对象。 阅读器必须包含由length指定的字符数,否则在执行SQLException将生成PreparedStatement 此方法与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 SQLException
        将指定参数设置为java.sql.NClob对象。 驱动程序在将其发送到数据库时将其转换为SQL NCLOB值。
        参数
        parameterIndex - 第一个参数是1,第二个参数是2,...
        value - 参数值
        异常
        SQLException - 如果驾驶员不支持国家字符集; 如果驱动程序可以检测到可能发生数据转换错误; 或者如果发生数据库访问错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.6
      • setNClob

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

        注意:请参阅JDBC驱动程序文档以确定使用带有length参数的setNClob版本是否更有效。

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

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