• 金仓数据库KingbaseES客户端编程接口指南-JDBC(5. JDBC 查询结果集处理)


    5. JDBC 查询结果集处理

    建立服务器连接后,我们可以在该连接上执行查询语句,并返回结果集对象,具体方法如下:

    1. 创建一个语句对象(Statement,PreparedStatement)。

      Statement stmt=conn.createStatement();
      
    2. 执行一条SQL查询语句,并返回结果集。

      ResultSet rs=stmt.executeQuery("select * from table1");
      或者
      stmt.execute("select * from table1");
      ResultSet rs=stmt.getResultSet();
      

    注意

    用户在创建语句的同时可以指定结果集的类型、并发性和 hold 方式。目前,KingbaseES JDBC 中:

    1. 结果集的可滚动性支持:

      通过执行语句而创建的结果集不仅支持向前(从第一行到最后一行)浏览内容,而且还支持向后(从最后一行到第一行)浏览内容的能力。

      KingbaseES 支持只向前滚结果集 TYPE_FORWARD_ONLY 和滚动不敏感结果集 TYPE_SCROLL_INSENSITIVE,不支持滚动敏感结果集 TYPE_SCROLL_SENSITIVE。 TYPE_SCROLL_INSENSITIVE可以双向滚动,但不及时更新,Result不能反映数据库中修改过的数据。

      可以在创建语句时指定参数 "int resultSetType" 来设置。

    2. 结果集的并发性支持:

      只读结果集 CONCUR_READ_ONLY 和可更新结果集 CONCUR_UPDATABLE。

      对于滚动不敏感(TYPE_SCROLL_INSENSITIVE)或者可更新(CONCUR_UPDATABLE)的结果集,当结果集中的数据量过大时,应用程序中可能出现 JAVA 虚拟机内存溢出的问题,所以建议尽可能不要使用滚动不敏感或可更新结果集。如果不得不使用,可采取的方法有两种:

      1)在启动 JAVA 虚拟机的时候更改启动参数增大它的最大虚拟内存的容量。如执行

      java -Xms32m -Xmx500m -jar JDTS.JAR,

      将 JAVA虚拟机的最大虚拟内存容量设置为500M。

      2)首先读取所要查询数据行的唯一标识符(例如主键)数据缓存在应用中,然后分段分页读取所要求的数据。

      可以在创建语句时指定参数 "int concurrencyLevel" 来设置。

    3. 结果集的可保持性支持:

      JDBC 3.0 提供了两种结果集可持有类型:提交关闭结果集 CLOSE_CURSORS_AT_COMMIT 和 跨结果集提交 HOLD_CURSORS_OVER_COMMIT,默认值为 CLOSE_CURSORS_AT_COMMIT。

      采用提交关闭结果集类型的结果集在事务提交之后被关闭,而跨结果集提交类型的结果集在事务提交或者回滚之后仍能保持打开状态, ResultSet可以继续使用。

      可以在创建语句时指定参数 "int resultSetHoldability" 来设置。

    下例是对结果集的操作示例:

    stmt.execute("create  table second ( id1 int primary key, name1 text )");
    stmt.execute("insert into second values (1,'anyvalue' )");
    stmt.executeUpdate("INSERT INTO second values (2,'two')");
    stmt.executeUpdate("INSERT INTO second values (3,'three')");
    stmt.executeUpdate("INSERT INTO second values (4,'four')");
    stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
    ResultSet rs = stmt.executeQuery("select id1,name1 from second order by id1");
    if (rs.next()) {
          /* 输出结果是1 */
          System.out.println("获取第一行结果:1==" + rs.getInt("id1"));
    }
    /* 删除第一行结果 */
    rs.deleteRow();
    /* 指针返回位于第一行之前,则返回true,如果指针位于任何其他位置或者结果集不包含任何行,则返回false */
    if (rs.isBeforeFirst()) {
          rs.next();
          rs.next();
          /* 输出结果是3 */
          System.out.println("获取第一行结果:3==" + rs.getInt("id1"));
    }
    /* 指针指向结果集第一行 */
    rs.first();
    /* 输出结果是2 */
    System.out.println("获取第一行结果:2==" + rs.getInt("id1"));
    

    在生成结果集之后,用户还可以获取结果集的元数据(MetaData),即对结果集中各列的描述信息。

    例:

    ResultSetMetaData rsmd=rs.getMetaData();
    

    5.1. 结果集的读取

    在 ResultSet 第一次创建时,指针定位在第一行的前面,通过 ResultSet 中提供的各个定位函数使 ResultSet 指针指向实际要访问的数据行,然后使用 getXXX 方法读取结果集中当前行或列的值。

    具体来讲,ResultSet 中的定位函数有:next,absolute,afterLast,beforeFirst,first,last,previous,moveToInsertRow,moveToCurrentRow。

    对于 TYPE_FORWARD_ONLY 类型的结果集只能使用 next()方法移动 ResultSet 指针。

    例 5-1. next()方法

    Statement stmt=conn.createStatement();
    ResultSet rs=stmt.executeQuery("select * from table1");
    while (rs.next())
        System.out.println(rs.getInt (1));
    

    5.2. 对结果集的更新

    除了利用更新语句来对数据库进行更新以外,我们还可以通过对结果集进行更新,来达到更新数据库的目的。但要注意:这种情况下,结果集的并发性类型必须为 CONCUR_UPDATABLE。用户对结果集的更新同时作用于数据源。

    例 5-2. 对结果集的更新

    Statement stmt=conn.createStatement(
        ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
    ResultSet rs=stmt.executeQuery("select * from table1");
    rs.next();
    System.out.println("updata before: " + rs.getInt(1));
    rs.updateInt(1,21);/* 修改当前行第一列的值为21。 */
    rs.updateRow();/* 作用于数据源 */
    System.out.println("updata after: " + rs.getInt(1));
    

    5.3. JDBC ResultSet API

    1. public boolean next()

      功能:

      将光标从当前位置向前移一行。ResultSet 光标最初位于第一行之前;第一次调用 next 方法使第一行成为当前行;第二次调用使第二行成为当前行,依此类推。

      返回值:

      如果新的当前行有效,则返回 true;如果不存在下一行,则返回 false 。

    2. public void close()

      功能:

      立即释放此 ResultSet 对象的数据库和 JDBC 资源,而不是等待该对象自动关闭时发生此操作。

    3. public boolean wasNull()

      功能:

      报告最后一个读取的列是否具有值 SQL NULL。注意,必须首先对列调用一个获取方法尝试读取其值,然后调用 wasNull 方法查看读取的值是否为 SQL NULL。

      返回值:

      如果最后一个读取的列值为 SQL NULL,则返回 true;否则返回 false 。

    4. public String getString(int columnIndex)

      功能:

      以 Java 编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null 。

    5. public boolean getBoolean(int columnIndex)

      功能:

      以 Java 编程语言中 boolean 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 false 。

    6. public byte getByte(int columnIndex)

      功能:

      以 Java 编程语言中 byte 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    7. public short getShort(int columnIndex)

      功能:

      以 Java 编程语言中 short 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    8. public int getInt(int columnIndex)

      功能:

      以 Java 编程语言中 int 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    9. public long getLong(int columnIndex)

      功能:

      以 Java 编程语言中 long 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    10. public float getFloat(int columnIndex)

      功能:

      以 Java 编程语言中 float 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    11. public double getDouble(int columnIndex)

      功能:

      以 Java 编程语言中 double 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    12. public BigDecimal getBigDecimal(int columnIndex,int scale)

      功能:

      以 Java 编程语言中 java.math.BigDecimal 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      scale - 小数点右边的位数。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null 。

    13. public byte[] getBytes(int columnIndex)

      功能:

      以 Java 编程语言中 byte 数组的形式获取此 ResultSet 对象的当前行中指定列的值。这些字节表示驱动程序返回的原始值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null 。

    14. public Date getDate(int columnIndex)

      功能:

      以 Java 编程语言中 java.sql.Date 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null。

    15. public Time getTime(int columnIndex)

      功能:

      以 Java 编程语言中 java.sql.Time 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null。

    16. public Timestamp getTimestamp(int columnIndex)

      功能:

      以 Java 编程语言中 java.sql.Timestamp 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null。

    17. public InputStream getAsciiStream(int columnIndex)

      功能:

      以 ASCII 字符流的形式获取此 ResultSet 对象的当前行中指定列的值。然后,可以按块从流中读取值。此方法尤其适合于获取很大的 LONGVARCHAR 值。JDBC 驱动程序将执行从数据库格式到 ASCII 的任何必要转换。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      以一字节 ASCII 字符流的形式返回传递数据库列值的 Java 输入流;如果值为 SQL NULL,则返回值为 null。

    18. public InputStream getBinaryStream(int columnIndex)

      功能:

      以未解释字节的流的形式获取此 ResultSet 对象的当前行中指定列的值。然后,可以按块从流中读取值。此方法尤其适合于获取很大的 LONGVARBINARY 值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      以未解释字节的流的形式返回传递数据库列值的 Java 输入流;如果值为 SQL NULL,则返回值为 null。

    19. public String getString(String columnLabel)

      功能:

      以 Java 编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null。

    20. public boolean getBoolean(String columnLabel)

      功能:

      以 Java 编程语言中 boolean 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 false。

    21. public byte getByte(String columnLabel)

      功能:

      以 Java 编程语言中 byte 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    22. public short getShort(String columnLabel)

      功能:

      以 Java 编程语言中 short 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    23. public int getInt(String columnLabel)

      功能:

      以 Java 编程语言中 int 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0 。

    24. public long getLong(String columnLabel)

      功能:

      以 Java 编程语言中 long 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    25. public float getFloat(String columnLabel)

      功能:

      以 Java 编程语言中 float 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    26. public double getDouble(String columnLabel)

      功能:

      以 Java 编程语言中 double 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 0。

    27. public byte[] getBytes(String columnLabel)

      功能:

      以 Java 编程语言中 byte 数组的形式获取此 ResultSet 对象的当前行中指定列的值。这些字节表示驱动程序返回的原始值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null。

    28. public Date getDate(String columnLabel)

      功能:

      以 Java 编程语言中的 java.sql.Date 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null。

    29. public Time getTime(String columnLabel)

      功能:

      以 Java 编程语言中 java.sql.Time 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null。

    30. public Timestamp getTimestamp(String columnLabel)

      功能:

      以 Java 编程语言中 java.sql.Timestamp 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值;如果值为 SQL NULL,则返回值为 null。

    31. public InputStream getAsciiStream(String columnLabel)

      功能:

      以 ASCII 字符流的形式获取此 ResultSet 对象的当前行中指定列的值。然后,可以按块从流中读取值。此方法尤其适合于获取很大的 LONGVARCHAR 值。JDBC 驱动程序将执行从数据库格式到 ASCII 的任何必要转换。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      以一字节 ASCII 字符流的形式返回传递数据库列值的 Java 输入流。如果值为 SQL NULL,则返回值为 null。

    32. public InputStream getBinaryStream(String columnLabel)

      功能:

      以未解释的 byte 流的形式获取此 ResultSet 对象的当前行中指定列的值。然后,可以按块从流中读取该值。此方法尤其适合于获取很大的 LONGVARBINARY 值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      以未解释字节流的形式返回传递数据库列值的 Java 输入流;如果值为 SQL NULL,则返回值为 null。

    33. public SQL警告 get警告s()

      功能:

      获取此 ResultSet 对象上的调用报告的第一个警告。此 ResultSet 对象上的后续警告会被链接到此方法返回的 SQL警告 对象。

      返回值:

      报告的第一个 SQL警告 对象;如果不存在,则返回 null。

    34. public void clear警告s()

      功能:

      清除在此 ResultSet 对象上报告的所有警告。调用此方法后,在为此 ResultSet 对象报告新的警告之前,get警告s 方法将返回 null。

    35. public String getCursorName()

      功能:

      获取此 ResultSet 对象使用的 SQL 光标的名称。

      返回值:

      此 ResultSet 对象的光标的 SQL 名称。

    36. public ResultSetMetaData getMetaData()

      功能:

      获取此 ResultSet 对象的列的编号、类型和属性。

      返回值:

      此 ResultSet 对象的列的描述。

    37. public Object getObject(int columnIndex)

      功能:

      以 Java 编程语言中 Object 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      保存列值的 java.lang.Object。

    38. public Object getObject(String columnLabel)

      功能:

      以 Java 编程语言中 Object 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      保存列值的 java.lang.Object。

    39. public int findColumn(String columnLabel)

      功能:

      将给定的 ResultSet 列标签映射到其 ResultSet 列索引。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      给定列名称的列索引。

    40. public Reader getCharacterStream(int columnIndex)

      功能:

      以 java.io.Reader 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      包含列值的 java.io.Reader 对象;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null。

    41. public Reader getCharacterStream(String columnLabel)

      功能:

      以 java.io.Reader 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      包含列值的 java.io.Reader 对象;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null 。

    42. public BigDecimal getBigDecimal(int columnIndex)

      功能:

      以具有全精度的 java.math.BigDecimal 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      列值(全精度);如果值为 SQL NULL,则返回值为 Java 编程语言中的 null。

    43. public BigDecimal getBigDecimal(String columnLabel)

      功能:

      以具有全精度的 java.math.BigDecimal 的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      列值(全精度);如果值为 SQL NULL,则返回值为 Java 编程语言中的 null。

    44. public boolean isBeforeFirst()

      功能:

      获取光标是否位于此 ResultSet 对象的第一行之前。

      返回值:

      如果光标位于第一行之前,则返回 true;如果光标位于任何其他位置或者结果集不包含任何行,则返回 false 。

    45. public boolean isAfterLast()

      功能:

      获取光标是否位于此 ResultSet 对象的最后一行之后。

      返回值:

      如果光标位于最后一行之后,则返回 true;如果光标位于任何其他位置或者结果集不包含任何行,则返回 false 。

    46. public boolean isFirst()

      功能:

      获取光标是否位于此 ResultSet 对象的第一行。

      返回值:

      如果光标位于第一行,则返回 true;否则返回 false。

    47. public boolean isLast()

      功能:

      获取光标是否位于此 ResultSet 对象的最后一行。

      返回值:

      如果光标位于最后一行上,则返回 true;否则返回 false。

    48. public void beforeFirst()

      功能:

      将光标移动到此 ResultSet 对象的开头,正好位于第一行之前。如果结果集中不包含任何行,则此方法无效。

    49. public void afterLast()

      功能:

      将光标移动到此 ResultSet 对象的末尾,正好位于最后一行之后。如果结果集中不包含任何行,则此方法无效。

    50. public boolean first()

      功能:

      将光标移动到此 ResultSet 对象的第一行。

      返回值:

      如果光标位于有效行,则返回 true;如果结果集中不存在任何行,则返回 false。

    51. public boolean last()

      功能:

      将光标移动到此 ResultSet 对象的最后一行。

      返回值:

      如果光标位于有效行,则返回 true;如果结果集中不存在任何行,则返回 false。

    52. public int getRow()

      功能:

      获取当前行编号。第一行为 1 号,第二行为 2 号,依此类推。

      返回值:

      当前行的编号;如果不存在当前行,则返回 0 。

    53. public boolean absolute(int row)

      功能:

      将光标移动到此 ResultSet 对象的给定行编号。

      参数:

      row - 光标应该移动到的行的编号。正的编号指示从结果集开头开始计数的行编号;负的编号指示从结果集末尾开始计数的行编号。

      返回值:

      如果光标移动到此 ResultSet 对象的位置处,则返回 true;如果光标在第一行的前面或最后一行的后面,则返回 false 。

    54. public boolean relative(int rows)

      功能:

      按相对行数(或正或负)移动光标。试图移动到结果集的第一行/最后一行之外,会将光标置于第一行之前或最后一行之后。调用 relative(0) 有效,但是不更改光标位置。

      参数:

      rows - 指定从当前行开始移动的行数的 int;正数表示光标向前移动;负数表示光标向后移动。

      返回值:

      如果光标位于行上,则返回 true;否则返回 false 。

    55. public boolean previous()

      功能:

      将光标移动到此 ResultSet 对象的上一行。

      返回值:

      如果光标现在位于有效行上,则返回 true;如果光标位于第一行的前面,则返回 false 。

    56. public void setFetchDirection(int direction)

      功能:

      设置此 ResultSet 对象中行的处理方向。初始值由生成此 ResultSet 对象的 Statement 对象确定。获取方向可以在任何时间更改。

      参数:

      direction - 指定建议获取方向的 int;ResultSet.FETCH_FORWARD、ResultSet.FETCH_REVERSE 或 ResultSet.FETCH_UNKNOWN 之一。

    57. public int getFetchDirection()

      功能:

      获取此 ResultSet 对象的获取方向。

      返回值:

      此 ResultSet 对象的当前获取方向。

    58. public void setFetchSize(int rows)

      功能:

      为 JDBC 驱动程序设置此 ResultSet 对象需要更多行时应该从数据库获取的行数。如果指定的获取大小为零,则 JDBC 驱动程序忽略该值,随意对获取大小作出它自己的最佳猜测。默认值由创建结果集的 Statement 对象设置。获取大小可以在任何时间更改。

      参数:

      rows - 要获取的行数。

    59. public int getFetchSize()

      功能:

      获取此 ResultSet 对象的获取大小。

      返回值:

      此 ResultSet 对象的当前获取大小。

    60. public int getType()

      功能:

      获取此 ResultSet 对象的类型。类型由创建结果集的 Statement 对象确定。

      返回值:

      ResultSet.TYPE_FORWARD_ONLY、ResultSet.TYPE_SCROLL_INSENSITIVE 或 ResultSet.TYPE_SCROLL_SENSITIVE 。

    61. public int getConcurrency()

      功能:

      获取此 ResultSet 对象的并发模式。使用的并发由创建结果集的 Statement 对象确定。

      返回值:

      并发类型,ResultSet.CONCUR_READ_ONLY 或 ResultSet.CONCUR_UPDATABLE 。

    62. public boolean rowUpdated()

      功能:

      获取是否已更新当前行。返回值取决于结果集是否可以检测到更新。

      返回值:

      如果所有者和其他人检测到当前行已进行可见更新,则返回 true;否则返回 false。

    63. public boolean rowInserted()

      功能:

      获取当前行是否已有插入。返回值取决于此 ResultSet 对象是否可以检测到可见插入。

      返回值:

      如果当前检测到已插入,则返回 true;否则返回 false 。

    64. public boolean rowDeleted()

      功能:

      获取是否已删除某行。删除的行可能在结果集中留下一个可见的“洞”。此方法可用于检测结果集中的洞。返回值取决于此 ResultSet 对象是否可以检测到删除。

      返回值:

      如果所有者或其他人检测到当前行已删除,则返回 true;否则返回 false 。

    65. public void updateNull(int columnIndex)

      功能:

      用 null 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

    66. public void updateBoolean(int columnIndex,boolean x)

      功能:

      用 boolean 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    67. public void updateByte(int columnIndex,byte x)

      功能:

      用 byte 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    68. public void updateShort(int columnIndex,short x)

      功能:

      用 short 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    69. public void updateInt(int columnIndex,int x)

      功能:

      用 int 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    70. public void updateLong(int columnIndex,long x)

      功能:

      用 long 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会不更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    71. public void updateFloat(int columnIndex,float x)

      功能:

      用 float 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    72. public void updateDouble(int columnIndex,double x)

      功能:

      用 double 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    73. public void updateBigDecimal(int columnIndex,BigDecimal x)

      功能:

      用 java.math.BigDecimal 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    74. public void updateString(int columnIndex,String x)

      功能:

      用 String 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    75. public void updateBytes(int columnIndex,byte[] x)

      功能:

      用 byte 数组值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    76. public void updateDate(int columnIndex,Date x)

      功能:

      用 java.sql.Date 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    77. public void updateTime(int columnIndex,Time x)

      功能:

      用 java.sql.Time 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    78. public void updateTimestamp(int columnIndex,Timestamp x)

      功能:

      用 java.sql.Timestamp 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    79. public void updateAsciiStream(int columnIndex,InputStream x,int length)

      功能:

      用 ascii 流值更新指定列,该列将具有指定字节数。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

      length - 流的长度。

    80. public void updateBinaryStream(int columnIndex,InputStream x,int length)

      功能:

      用二进制流值更新指定列,该列将具有指定字节数。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

      length - 流的长度。

    81. publicvoid updateCharacterStream(int columnIndex,Reader x,int length)

      功能:

      用字符流值更新指定列,该列将具有指定字节数。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

      length - 流的长度。

    82. public void updateObject(int columnIndex,Object x,int scaleOrLength)

      功能:

      用 Object 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

      scaleOrLength - 对于 java.math.BigDecimal 对象,此参数是小数点后的位数。对于 Java 对象类型 InputStream 和 Reader,此参数是该流或 reader 中数据的长度。对于其他所有类型,将忽略此值。

    83. public void updateObject(int columnIndex,Object x)

      功能:

      用 Object 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    84. public void updateNull(String columnLabel)

      功能:

      用 null 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称 。

    85. public void updateBoolean(String columnLabel,boolean x)

      功能:

      用 boolean 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    86. public void updateByte(String columnLabel,byte x)

      功能:

      用 byte 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    87. public void updateShort(String columnLabel,short x)

      功能:

      用 short 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    88. public void updateInt(String columnLabel,int x)

      功能:

      用 int 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    89. public void updateLong(String columnLabel,long x)

      功能:

      用 long 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    90. public void updateFloat(String columnLabel,float x)

      功能:

      用 float 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    91. public void updateDouble(String columnLabel,double x)

      功能:

      用 double 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    92. public void updateBigDecimal(String columnLabel,BigDecimal x)

      功能:

      用 java.math.BigDecimal 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    93. public void updateString(String columnLabel,String x)

      功能:

      用 String 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    94. public void updateBytes(String columnLabel,byte[] x)

      功能:

      用字节数组值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    95. public void updateDate(String columnLabel,Date x)

      功能:

      用 java.sql.Date 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    96. public void updateTime(String columnLabel,Time x)

      功能:

      用 java.sql.Time 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    97. public void updateTimestamp(String columnLabel,Timestamp x)

      功能:

      用 java.sql.Timestamp 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    98. public void updateAsciiStream(String columnLabel,InputStream x,int length)

      功能:

      用 ascii 流值更新指定列,该列具有指定的字节数。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

      length - 流的长度 。

    99. public void updateBinaryStream(String columnLabel,InputStream x,int length)

      功能:

      用二进制流值更新指定列,该列具有指定的字节数。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

      length - 流的长度 。

    100. public void updateCharacterStream(String columnLabel,Reader reader,int length)

      功能:

      用字符流值更新指定列,该列具有指定的字节数。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      reader - 包含新列值的 java.io.Reader 对象。

      length - 流的长度 。

    101. public void updateObject(String columnLabel,Object x,int scaleOrLength)

      功能:

      用 Object 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

      scaleOrLength - 对于 java.math.BigDecimal 对象,此参数是小数点后的位数。对于 Java 对象类型 InputStream 和 Reader,此参数是该流或 reader 中数据的长度。 对于其他所有类型,将忽略此值。

    102. public void updateObject(String columnLabel,Object x)

      功能:

      用 Object 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    103. public void insertRow()

      功能:

      将插入行的内容插入到此 ResultSet 对象和数据库中。调用此方法时,光标必须位于插入行上。

    104. public void updateRow()

      功能:

      用此 ResultSet 对象的当前行的新内容更新底层数据库。光标不位于插入行上时不能调用此方法。

    105. public void deleteRow()

      功能:

      从此 ResultSet 对象和底层数据库中删除当前行。光标不位于插入行上时不能调用此方法。

    106. public void refreshRow()

      功能:

      用数据库中的最近值刷新当前行。光标不位于插入行上时不能调用此方法。

    107. public void cancelRowUpdates()

      功能:

      取消对 ResultSet 对象中的当前行所作的更新。此方法在调用更新方法之后,但在调用 updateRow 方法之前调用才可以回滚对行所作的更新。如果没有进行任何更新或者已经调用 updateRow 方法,则此方法无效。

    108. public void moveToInsertRow()

      功能:

      将光标移动到插入行。将光标置于插入行上时,当前的光标位置会被记住。插入行是一个与可更新结果集相关联的特殊行。它实际上是一个缓冲区,在将行插入到结果集前可以通过调用更新方法在其中构造新行。当光标位于插入行上时,仅能调用更新方法、获取方法以及 insertRow 方法。每次在调用 insertRow 之前调用此方法时,必须为结果集中的所有列分配值。在对列值调用获取方法之前,必须调用更新方法。

    109. public void moveToCurrentRow()

      功能:

      将光标移动到记住的光标位置,通常为当前行。如果光标不位于插入行上,则此方法无效。

    110. public Statement getStatement()

      功能:

      获取生成此 ResultSet 对象的 Statement 对象。如果结果集是以其他方式生成的(如通过 DatabaseMetaData 方法),则此方法可能返回 null。

      返回值:

      生成此 ResultSet 对象的 Statment 对象;如果结果集是以其他方法生成的,则返回 null 。

    111. public Blob getBlob(int columnIndex)

      功能:

      以 Java 编程语言中 Blob 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      表示指定列中的 SQL BLOB 值的 BLOB 对象。

    112. public Clob getClob(int columnIndex)

      功能:

      以 Java 编程语言中 Clob 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      表示指定列中的 SQL Clob 值的 Clob 对象。

    113. public Blob getBlob(String columnLabel)

      功能:

      以 Java 编程语言中 Blob 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      表示指定列中 SQL Blob 值的 Blob 对象。

    114. public Clob getClob(String columnLabel)

      功能:

      以 Java 编程语言中 Clob 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      表示指定列中 SQL CLOB 值的 Clob 对象。

    115. public Date getDate(int columnIndex,Calendar cal)

      功能:

      以 Java 编程语言中 java.sql.Date 对象的形式获取此 ResultSet 对象的当前行中指定列的值。如果底层数据库未存储时区信息,则此方法使用给定日历构造日期的适当毫秒值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      cal - 在构造日期时使用的 java.util.Calendar 对象 。

      返回值:

      java.sql.Date 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null 。

    116. public Date getDate(String columnLabel,Calendar cal)

      功能:

      以 Java 编程语言中 java.sql.Date 对象的形式获取此 ResultSet 对象的当前行中指定列的值。如果底层数据库未存储时区信息,则此方法使用给定日历构造日期的适当毫秒值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      cal - 在构造日期时使用的 java.util.Calendar 对象。

      返回值:

      java.sql.Date 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null 。

    117. public Time getTime(int columnIndex,Calendar cal)

      功能:

      以 Java 编程语言中 java.sql.Time 对象的形式获取此 ResultSet 对象的当前行中指定列的值。如果底层数据库未存储时区信息,则此方法使用给定日历构造时间的适当毫秒值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      cal - 在构造日期时使用的 java.util.Calendar 对象。

      返回值:

      java.sql.Time 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null 。

    118. public Time getTime(String columnLabel,Calendar cal)

      功能:

      以 Java 编程语言中 java.sql.Time 对象的形式获取此 ResultSet 对象的当前行中指定列的值。如果底层数据库未存储时区信息,则此方法使用给定日历构造时间的适当毫秒值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      cal - 在构造日期时使用的 java.util.Calendar 对象。

      返回值:

      java.sql.Time 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null 。

    119. public Timestamp getTimestamp(int columnIndex,Calendar cal)

      功能:

      以 Java 编程语言中 java.sql.Timestamp 对象的形式获取此 ResultSet 对象的当前行中指定列的值。如果底层数据库未存储时区信息,则此方法使用给定日历构造时间戳的适当毫秒值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      cal - 在构造日期时使用的 java.util.Calendar 对象。

      返回值:

      java.sql.Timestamp 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null 。

    120. public Timestamp getTimestamp(String columnLabel,Calendar cal)

      功能:

      以 Java 编程语言中 java.sql.Timestamp 对象的形式获取此 ResultSet 对象的当前行中指定列的值。如果底层数据库未存储时区信息,则此方法使用给定日历构造时间戳的适当毫秒值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      cal - 在构造日期时使用的 java.util.Calendar 对象。

      返回值:

      java.sql.Timestamp 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null 。

    121. public void updateBlob(int columnIndex,Blob x)

      功能:

      用 java.sql.Blob 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。该函数在PG兼容模式下未实现。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    122. public void updateBlob(String columnLabel,Blob x)

      功能:

      用 java.sql.Blob 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。该函数在PG兼容模式下未实现。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    123. public void updateClob(int columnIndex,Clob x)

      功能:

      用 java.sql.Clob 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。该函数在PG兼容模式下未实现。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    124. public void updateClob(String columnLabel,Clob x)

      功能:

      用 java.sql.Clob 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。该函数在PG兼容模式下未实现。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    125. public int getHoldability()

      功能:

      获取此 ResultSet 对象的可保存性。

      返回值:

      ResultSet.HOLD_CURSORS_OVER_COMMIT 或 ResultSet.CLOSE_CURSORS_AT_COMMIT 。

    126. public boolean isClosed()

      功能:

      获取此 ResultSet 对象是否已关闭。如果已经在 ResultSet 上调用了 close 方法,或者 ResultSet 自动关闭,则 ResultSet 已关闭。

      返回值:

      如果此 ResultSet 对象已关闭,则返回 true;如果它仍然是打开的,则返回 false 。

    127. public SQLXML getSQLXML(int columnIndex)

      功能:

      以 Java 编程语言中 java.sql.SQLXML 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      返回值:

      一个映射 SQL XML 值的 SQLXML 对象。

    128. public SQLXML getSQLXML(String columnLabel)

      功能:

      以 Java 编程语言中 java.sql.SQLXML 对象的形式获取此 ResultSet 对象的当前行中指定列的值。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      返回值:

      一个映射 SQL XML 值的 SQLXML 对象。

    129. public void updateSQLXML(int columnIndex,SQLXML xmlObject)

      功能:

      用 java.sql.SQLXML 值更新指定列。更新方法用于更新当前行或插入行中的列值。更新方法不更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      xmlObject - 要更新的列值。

    130. public void updateSQLXML(String columnLabel,SQLXML xmlObject)

      功能:

      用 java.sql.SQLXML 值更新指定列。更新方法用于更新当前行或插入行中的列值。更新方法不更新底层数据库;更新数据库要调用 updateRow 或 insertRow 方法。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      xmlObject - 列值。

    131. public void updateBinaryStream(int columnIndex,InputStream x,long length)

      功能:

      用二进制流值更新指定的列,该值将具有指定的字节数。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

      length - 流的长度 。

    132. public void updateCharacterStream(int columnIndex,Reader x,long length)

      功能:

      用字符流值更新指定的列,该值将具有指定的字节数。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

      length - 流的长度 。

    133. public void updateAsciiStream(String columnLabel,InputStream x,long length)

      功能:

      用 ascii 流值更新指定的列,该值将具有指定的字节数。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

      length - 流的长度 。

    134. public void updateBinaryStream(String columnLabel,InputStream x,long length)

      功能:

      用二进制流值更新指定的列,该值将具有指定的字节数。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

      length - 流的长度 。

    135. public void updateCharacterStream(String columnLabel,Reader reader,long length)

      功能:

      字符流值更新指定的列,该值将具有指定的字节数。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

      length - 流的长度 。

    136. public void updateBlob(int columnIndex,InputStream inputStream,long length)

      功能:

      使用给定输入流更新指定的列,该流将具有指定的字节数。该函数在PG兼容模式下未实现。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      inputStream - 包含用来设置参数值的数据的对象。

      length - 参数数据中的字节数。

    137. public void updateBlob(String columnLabel,InputStream inputStream,long length)

      功能:

      使用给定输入流更新指定的列,该流将具有指定的字节数。该函数在PG兼容模式下未实现。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      inputStream - 包含用来设置参数值的数据的对象。

      length - 参数数据中的字节数。

    138. public void updateClob(int columnIndex,Reader reader,long length)

      功能:

      使用给定的 Reader 对象更新指定列,该对象是给定的字符长度数目。在将一个非常大的 UNICODE 值输入到 LONGVARCHAR 参数时,通过 java.io.Reader 对象发送它可能更为实际。JDBC 驱动程序将执行从 UNICODE 到数据库 char 格式的任何必要转换。该函数在PG兼容模式下未实现。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      reader - 包含用来设置参数值的数据的对象。

      length - 参数数据中的字符数。

    139. public void updateClob(String columnLabel,Reader reader,long length)

      功能:

      使用给定的 Reader 对象更新指定列,该对象是给定的字符长度数目。在将一个非常大的 UNICODE 值输入到 LONGVARCHAR 参数时,通过 java.io.Reader 对象发送它可能更为实际。JDBC 驱动程序将执行从 UNICODE 到数据库 char 格式的任何必要转换。该函数在PG兼容模式下未实现。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      reader - 包含用来设置参数值的数据的对象。

      length - 参数数据中的字符数。

    140. public void updateAsciiStream(int columnIndex,InputStream x)

      功能:

      用 ascii 流值更新指定的列。将根据需要从流中读取数据,一直读取到流末尾。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    141. public void updateBinaryStream(int columnIndex,InputStream x)

      功能:

      用二进制流值更新指定的列。将根据需要从流中读取数据,一直读取到流末尾。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    142. public void updateCharacterStream(int columnIndex,Reader x)

      功能:

      用字符流值更新指定的列。将根据需要从流中读取数据,一直读取到流末尾。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      x - 新列值。

    143. public void updateAsciiStream(String columnLabel,InputStream x)

      功能:

      用 ascii 流值更新指定列。将根据需要从流中读取数据,一直读取到流末尾。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    144. public void updateBinaryStream(String columnLabel,InputStream x)

      功能:

      用二进制流值更新指定列。将根据需要从流中读取数据,一直读取到流末尾。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      x - 新列值。

    145. public void updateCharacterStream(String columnLabel,Reader reader)

      功能:

      用字符流值更新指定列。将根据需要从流中读取数据,一直读取到流末尾。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      reader - 包含新列值的 java.io.Reader 对象。

    146. public void updateBlob(int columnIndex,InputStream inputStream)

      功能:

      使用给定输入流值更新指定列。将根据需要从流中读取数据,一直读取到流末尾。该函数在PG兼容模式下未实现。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      inputStream - 包含用来设置参数值的数据的对象。

    147. public void updateBlob(String columnLabel,InputStream inputStream)

      功能:

      使用给定输入流值更新指定列。将根据需要从流中读取数据,一直读取到流末尾。该函数在PG兼容模式下未实现。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      inputStream - 包含用来设置参数值的数据的对象。

    148. public void updateClob(int columnIndex,Reader reader)

      功能:

      使用给定的 Reader 对象更新指定列。将根据需要从流中读取数据,一直读取到流末尾。JDBC 驱动程序将执行从 UNICODE 到数据库 char 格式的任何必要转换。该函数在PG兼容模式下未实现。

      参数:

      columnIndex - 第一个列是 1,第二个列是 2,……

      reader - 包含用来设置参数值的数据的对象。

    149. public void updateClob(String columnLabel,Reader reader)

      功能:

      使用给定的 Reader 对象更新指定列。将根据需要从流中读取数据,一直读取到流末尾。JDBC 驱动程序将执行从 UNICODE 到数据库 char 格式的任何必要转换。该函数在PG兼容模式下未实现。

      参数:

      columnLabel - 使用 SQL AS 子句指定的列标签。如果未指定 SQL AS 子句,则标签是列名称。

      reader - 包含用来设置参数值的数据的对象。

  • 相关阅读:
    CSS 中背景background和img的区别和使用时机
    算法部署经验实操:手把手教你掌握Atlas移植和算法推理
    PAT 乙级 1071 小赌怡情 python
    Docker安装Redis
    sonarqube源码
    秋招腾讯!配套初级程序员到Java高级架构师学习路线+配套学习资源
    idea2018 编译打包报错java.lang.StackOverflowError
    带你读论文丨S&P21 Survivalism: Living-Off-The-Land 经典离地攻击
    【芯片方案】珠宝手机秤方案
    【项目实战】基于高并发服务器的搜索引擎
  • 原文地址:https://blog.csdn.net/arthemis_14/article/details/126139025