java.sql.resultset方法与使用技巧

时间:2021-05-19 11:56:41
 
接口 ResultSet
public interface ResultSet
 

表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。

ResultSet 对象具有指向其当前数据行的指针。最初,指针被置于第一行之前。next 方法将指针移动到下一行;因为该方法在 ResultSet 对象中没有下一行时返回 false,所以可以在 while 循环中使用它来迭代结果集。

默认的 ResultSet 对象不可更新,仅有一个向前移动的指针。因此,只能迭代它一次,并且只能按从第一行到最后一行的顺序进行。可以生成可滚动和/或可更新的 ResultSet 对象。以下代码片段(其中 con 为有效的 Connection 对象)演示了如何生成可滚动且不受其他更新影响的、可更新的结果集。请参阅 ResultSet 字段以了解其他选项。

       Statement stmt = con.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery("SELECT a, b FROM TABLE2");
// rs will be scrollable, will not show changes made by others,
// and will be updatable

ResultSet 接口提供用于从当前行检索列值的 获取方法( getBooleangetLong 等)。可以使用列的索引编号或列的名称检索值。一般情况下,使用列索引较为高效。列从 1 开始编号。为了获得最大的可移植性,应该按从左到右的顺序读取每行中的结果集列,而且每列只能读取一次。

对于获取方法,JDBC 驱动程序尝试将基础数据转换为在获取方法中指定的 Java 类型,并返回适当的 Java 值。JDBC 规范有一个表,显示允许的从 SQL 类型到供 ResultSet 获取方法使用的 Java 类型的映射关系。

 

用作获取方法的输入的列名称不区分大小写。用列名称调用获取方法时,如果多个列具有这一名称,则返回第一个匹配列的值。列名称选项在生成结果集的 SQL 查询中使用列名称时使用。对于没有在查询中显式命名的列,最好使用列编号。如果使用列名称,程序员无法保证名称实际所指的就是预期的列。

在 JDBC 2.0 API (JDK 1.2) 中,此接口添加了一组更新方法。关于获取方法参数的注释同样适用于更新方法的参数。

可以用以下两种方式使用更新方法:

  1. 更新当前行中的列值。在可滚动的 ResultSet 对象中,可以向前和向后移动指针,将其置于绝对位置或相对于当前行的位置。以下代码片段更新 ResultSet 对象 rs 的第五行中的 NAME 列,然后使用方法 updateRow 更新用于派生 rs 的数据源表。
           rs.absolute(5); // moves the cursor to the fifth row of rs
    rs.updateString("NAME", "AINSWORTH"); // updates the
    // NAME column of row 5 to be AINSWORTH rs.updateRow(); // updates the row in the data source
  2. 将列值插入到插入行中。可更新的 ResultSet 对象具有一个与其关联的特殊行,该行用作构建要插入的行的暂存区域 (staging area)。以下代码片段将指针移动到插入行,构建一个三列的行,并使用方法 insertRow 将其插入到 rs 和数据源表中。
           rs.moveToInsertRow(); // moves cursor to the insert row
    rs.updateString(1, "AINSWORTH"); // updates the
    // first column of the insert row to be AINSWORTH rs.updateInt(2,35); // updates the second column to be 35 rs.updateBoolean(3, true); // updates the third column to true rs.insertRow(); rs.moveToCurrentRow();

当生成 ResultSet 对象的 Statement 对象关闭、重新执行或用来从多个结果的序列检索下一个结果时,ResultSet 对象会自动关闭。

ResultSet 对象的列的编号、类型和属性由 ResultSet.getMetaData 方法返回的 ResulSetMetaData 对象提供。

 

 

另请参见:
Statement.executeQuery(java.lang.String), Statement.getResultSet(), ResultSetMetaData

字段摘要
static int CLOSE_CURSORS_AT_COMMIT
          该常量指示调用 Connection.commit 方法时应该关闭 ResultSet 对象。
static int CONCUR_READ_ONLY
          该常量指示不可以更新的 ResultSet 对象的并发模式。
static int CONCUR_UPDATABLE
          该常量指示可以更新的 ResultSet 对象的并发模式。
static int FETCH_FORWARD
          该常量指示将按正向(即从第一个到最后一个)处理结果集中的行。
static int FETCH_REVERSE
          该常量指示将按反向(即从最后一个到第一个)处理结果集中的行处理。
static int FETCH_UNKNOWN
          该常量指示结果集中的行的处理顺序未知。
static int HOLD_CURSORS_OVER_COMMIT
          该常量指示调用 Connection.commit 方法时不应关闭 ResultSet 对象。
static int TYPE_FORWARD_ONLY
          该常量指示指针只能向前移动的 ResultSet 对象的类型。
static int TYPE_SCROLL_INSENSITIVE
          该常量指示可滚动但通常不受其他的更改影响的 ResultSet 对象的类型。
static int TYPE_SCROLL_SENSITIVE
          该常量指示可滚动并且通常受其他的更改影响的 ResultSet 对象的类型。
 
方法摘要
 boolean absolute(int row)
          将指针移动到此 ResultSet 对象的给定行编号。
 void afterLast()
          将指针移动到此 ResultSet 对象的末尾,正好位于最后一行之后。
 void beforeFirst()
          将指针移动到此 ResultSet 对象的开头,正好位于第一行之前。
 void cancelRowUpdates()
          取消对 ResultSet 对象中的当前行所作的更新。
 void clearWarnings()
          清除在此 ResultSet 对象上报告的所有警告。
 void close()
          立即释放此 ResultSet 对象的数据库和 JDBC 资源,而不是等待该对象自动关闭时发生此操作。
 void deleteRow()
          从此 ResultSet 对象和底层数据库中删除当前行。
 int findColumn(String columnName)
          将给定的 ResultSet 列名称映射到其 ResultSet 列索引。
 boolean first()
          将指针移动到此 ResultSet 对象的第一行。
 Array getArray(int i)
          以 Java 编程语言中 Array 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Array getArray(String colName)
          以 Java 编程语言中 Array 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 InputStream getAsciiStream(int columnIndex)
          以 ASCII 字符流的形式检索此 ResultSet 对象的当前行中指定列的值。
 InputStream getAsciiStream(String columnName)
          以 ASCII 字符流的形式检索此 ResultSet 对象的当前行中指定列的值。
 BigDecimal getBigDecimal(int columnIndex)
          以具有全精度的 java.math.BigDecimal 的形式检索此 ResultSet 对象的当前行中指定列的值。
 BigDecimal getBigDecimal(int columnIndex, int scale)
          已过时。  
 BigDecimal getBigDecimal(String columnName)
          以具有全精度的 java.math.BigDecimal 的形式检索此 ResultSet 对象的当前行中指定列的值。
 BigDecimal getBigDecimal(String columnName, int scale)
          已过时。  
 InputStream getBinaryStream(int columnIndex)
          以未解释字节的二进制流的形式检索此 ResultSet 对象的当前行中指定列的值。
 InputStream getBinaryStream(String columnName)
          以未解释的 byte 流的形式检索此 ResultSet 对象的当前行中指定列的值。
 Blob getBlob(int i)
          以 Java 编程语言中 Blob 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Blob getBlob(String colName)
          以 Java 编程语言中 Blob 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 boolean getBoolean(int columnIndex)
          以 Java 编程语言中 boolean 的形式检索此 ResultSet 对象的当前行中指定列的值。
 boolean getBoolean(String columnName)
          以 Java 编程语言中 boolean 的形式检索此 ResultSet 对象的当前行中指定列的值。
 byte getByte(int columnIndex)
          以 Java 编程语言中 byte 的形式检索此 ResultSet 对象的当前行中指定列的值。
 byte getByte(String columnName)
          以 Java 编程语言中 byte 的形式检索此 ResultSet 对象的当前行中指定列的值。
 byte[] getBytes(int columnIndex)
          以 Java 编程语言中 byte 数组的形式检索此 ResultSet 对象的当前行中指定列的值。
 byte[] getBytes(String columnName)
          以 Java 编程语言中 byte 数组的形式检索此 ResultSet 对象的当前行中指定列的值。
 Reader getCharacterStream(int columnIndex)
          以 java.io.Reader 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Reader getCharacterStream(String columnName)
          以 java.io.Reader 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Clob getClob(int i)
          以 Java 编程语言中 Clob 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Clob getClob(String colName)
          以 Java 编程语言中 Clob 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 int getConcurrency()
          检索此 ResultSet 对象的并发模式。
 String getCursorName()
          检索此 ResultSet 对象使用的 SQL 指针的名称。
 Date getDate(int columnIndex)
          以 Java 编程语言中 java.sql.Date 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Date getDate(int columnIndex, Calendar cal)
          以 Java 编程语言中 java.sql.Date 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Date getDate(String columnName)
          以 Java 编程语言中的 java.sql.Date 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Date getDate(String columnName, Calendar cal)
          以 Java 编程语言中 java.sql.Date 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 double getDouble(int columnIndex)
          以 Java 编程语言中 double 的形式检索此 ResultSet 对象的当前行中指定列的值。
 double getDouble(String columnName)
          以 Java 编程语言中 double 的形式检索此 ResultSet 对象的当前行中指定列的值。
 int getFetchDirection()
          检索此 ResultSet 对象的获取方向。
 int getFetchSize()
          检索此 ResultSet 对象的获取大小。
 float getFloat(int columnIndex)
          以 Java 编程语言中 float 的形式检索此 ResultSet 对象的当前行中指定列的值。
 float getFloat(String columnName)
          以 Java 编程语言中 float 的形式检索此 ResultSet 对象的当前行中指定列的值。
 int getInt(int columnIndex)
          以 Java 编程语言中 int 的形式检索此 ResultSet 对象的当前行中指定列的值。
 int getInt(String columnName)
          以 Java 编程语言中 int 的形式检索此 ResultSet 对象的当前行中指定列的值。
 long getLong(int columnIndex)
          以 Java 编程语言中 long 的形式检索此 ResultSet 对象的当前行中指定列的值。
 long getLong(String columnName)
          以 Java 编程语言中 long 的形式检索此 ResultSet 对象的当前行中指定列的值。
 ResultSetMetaData getMetaData()
          检索此 ResultSet 对象的列的编号、类型和属性。
 Object getObject(int columnIndex)
          以 Java 编程语言中 Object 的形式获取此 ResultSet 对象的当前行中指定列的值。
 Object getObject(int i, Map<String,Class<?>> map)
          以 Java 编程语言中 Object 的形式检索此 ResultSet 对象的当前行中指定列的值。
 Object getObject(String columnName)
          以 Java 编程语言中 Object 的形式获取此 ResultSet 对象的当前行中指定列的值。
 Object getObject(String colName, Map<String,Class<?>> map)
          以 Java 编程语言中 Object 的形式检索此 ResultSet 对象的当前行中指定列的值。
 Ref getRef(int i)
          以 Java 编程语言中 Ref 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Ref getRef(String colName)
          以 Java 编程语言中 Ref 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 int getRow()
          检索当前行编号。
 short getShort(int columnIndex)
          以 Java 编程语言中 short 的形式检索此 ResultSet 对象的当前行中指定列的值。
 short getShort(String columnName)
          以 Java 编程语言中 short 的形式检索此 ResultSet 对象的当前行中指定列的值。
 Statement getStatement()
          检索生成此 ResultSet 对象的 Statement 对象。
 String getString(int columnIndex)
          以 Java 编程语言中 String 的形式检索此 ResultSet 对象的当前行中指定列的值。
 String getString(String columnName)
          以 Java 编程语言中 String 的形式检索此 ResultSet 对象的当前行中指定列的值。
 Time getTime(int columnIndex)
          以 Java 编程语言中 java.sql.Time 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Time getTime(int columnIndex, Calendar cal)
          以 Java 编程语言中 java.sql.Time 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Time getTime(String columnName)
          以 Java 编程语言中 java.sql.Time 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Time getTime(String columnName, Calendar cal)
          以 Java 编程语言中 java.sql.Time 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Timestamp getTimestamp(int columnIndex)
          以 Java 编程语言中 java.sql.Timestamp 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Timestamp getTimestamp(int columnIndex, Calendar cal)
          以 Java 编程语言中 java.sql.Timestamp 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Timestamp getTimestamp(String columnName)
          以 java.sql.Timestamp 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 Timestamp getTimestamp(String columnName, Calendar cal)
          以 Java 编程语言中 java.sql.Timestamp 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 int getType()
          检索此 ResultSet 对象的类型。
 InputStream getUnicodeStream(int columnIndex)
          已过时。 使用 getCharacterStream 取代 getUnicodeStream
 InputStream getUnicodeStream(String columnName)
          已过时。 使用 getCharacterStream 代替
 URL getURL(int columnIndex)
          以 Java 编程语言中 java.net.URL 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 URL getURL(String columnName)
          以 Java 编程语言中 java.net.URL 对象的形式检索此 ResultSet 对象的当前行中指定列的值。
 SQLWarning getWarnings()
          检索此 ResultSet 对象上的调用报告的第一个警告。
 void insertRow()
          将插入行的内容插入到此 ResultSet 对象和数据库中。
 boolean isAfterLast()
          检索指针是否位于此 ResultSet 对象的最后一行之后。
 boolean isBeforeFirst()
          检索指针是否位于此 ResultSet 对象的第一行之前。
 boolean isFirst()
          检索指针是否位于此 ResultSet 对象的第一行。
 boolean isLast()
          检索指针是否位于此 ResultSet 对象的最后一行。
 boolean last()
          将指针移动到此 ResultSet 对象的最后一行。
 void moveToCurrentRow()
          将指针移动到记住的指针位置,通常为当前行。
 void moveToInsertRow()
          将指针移动到插入行。
 boolean next()
          将指针从当前位置下移一行。
 boolean previous()
          将指针移动到此 ResultSet 对象的上一行。
 void refreshRow()
          用数据库中的最近值刷新当前行。
 boolean relative(int rows)
          按相对行数(或正或负)移动指针。
 boolean rowDeleted()
          检索是否已删除某行。
 boolean rowInserted()
          检索当前行是否已有插入。
 boolean rowUpdated()
          检索是否已更新当前行。
 void setFetchDirection(int direction)
          设置此 ResultSet 对象中行的处理方向。
 void setFetchSize(int rows)
          为 JDBC 驱动程序设置此 ResultSet 对象需要更多行时应该从数据库获取的行数。
 void updateArray(int columnIndex, Array x)
          用 java.sql.Array 值更新指定列。
 void updateArray(String columnName, Array x)
          用 java.sql.Array 值更新指定列。
 void updateAsciiStream(int columnIndex, InputStream x, int length)
          用 ascii 流值更新指定列。
 void updateAsciiStream(String columnName, InputStream x, int length)
          用 ascii 流值更新指定列。
 void updateBigDecimal(int columnIndex, BigDecimal x)
          用 java.math.BigDecimal 值更新指定列。
 void updateBigDecimal(String columnName, BigDecimal x)
          用 java.sql.BigDecimal 值更新指定列。
 void updateBinaryStream(int columnIndex, InputStream x, int length)
          用二进制流值更新指定列。
 void updateBinaryStream(String columnName, InputStream x, int length)
          用二进制流值更新指定列。
 void updateBlob(int columnIndex, Blob x)
          用 java.sql.Blob 值更新指定列。
 void updateBlob(String columnName, Blob x)
          用 java.sql.Blob 值更新指定列。
 void updateBoolean(int columnIndex, boolean x)
          用 boolean 值更新指定列。
 void updateBoolean(String columnName, boolean x)
          用 boolean 值更新指定列。
 void updateByte(int columnIndex, byte x)
          用 byte 值更新指定列。
 void updateByte(String columnName, byte x)
          用 byte 值更新指定列。
 void updateBytes(int columnIndex, byte[] x)
          用 byte 数组值更新指定列。
 void updateBytes(String columnName, byte[] x)
          用字节数组值更新指定列。
 void updateCharacterStream(int columnIndex, Reader x, int length)
          用字符流值更新指定列。
 void updateCharacterStream(String columnName, Reader reader, int length)
          用字符流值更新指定列。
 void updateClob(int columnIndex, Clob x)
          用 java.sql.Clob 值更新指定列。
 void updateClob(String columnName, Clob x)
          用 java.sql.Clob 值更新指定列。
 void updateDate(int columnIndex, Date x)
          用 java.sql.Date 值更新指定列。
 void updateDate(String columnName, Date x)
          用 java.sql.Date 值更新指定列。
 void updateDouble(int columnIndex, double x)
          用 double 值更新指定列。
 void updateDouble(String columnName, double x)
          用 double 值更新指定列。
 void updateFloat(int columnIndex, float x)
          用 float 值更新指定列。
 void updateFloat(String columnName, float x)
          用 float 值更新指定列。
 void updateInt(int columnIndex, int x)
          用 int 值更新指定列。
 void updateInt(String columnName, int x)
          用 int 值更新指定列。
 void updateLong(int columnIndex, long x)
          用 long 值更新指定列。
 void updateLong(String columnName, long x)
          用 long 值更新指定列。
 void updateNull(int columnIndex)
          为可以为 null 的列提供 null 值。
 void updateNull(String columnName)
          用 null 值更新指定列。
 void updateObject(int columnIndex, Object x)
          用 Object 值更新指定列。
 void updateObject(int columnIndex, Object x, int scale)
          用 Object 值更新指定列。
 void updateObject(String columnName, Object x)
          用 Object 值更新指定列。
 void updateObject(String columnName, Object x, int scale)
          用 Object 值更新指定列。
 void updateRef(int columnIndex, Ref x)
          用 java.sql.Ref 值更新指定列。
 void updateRef(String columnName, Ref x)
          用 java.sql.Ref 值更新指定列。
 void updateRow()
          用此 ResultSet 对象的当前行的新内容更新底层数据库。
 void updateShort(int columnIndex, short x)
          用 short 值更新指定列。
 void updateShort(String columnName, short x)
          用 short 值更新指定列。
 void updateString(int columnIndex, String x)
          用 String 值更新指定列。
 void updateString(String columnName, String x)
          用 String 值更新指定列。
 void updateTime(int columnIndex, Time x)
          用 java.sql.Time 值更新指定列。
 void updateTime(String columnName, Time x)
          用 java.sql.Time 值更新指定列。
 void updateTimestamp(int columnIndex, Timestamp x)
          用 java.sql.Timestamp 值更新指定列。
 void updateTimestamp(String columnName, Timestamp x)
          用 java.sql.Timestamp 值更新指定列。
 boolean wasNull()
          报告最后一个读取的列是否具有值 SQL NULL
 

字段详细信息

FETCH_FORWARD

static final int FETCH_FORWARD
该常量指示将按正向(即从第一个到最后一个)处理结果集中的行。 setFetchDirection 方法将此常量用作驱动程序的提示,驱动程序可能忽略它。

 

从以下版本开始:
1.2
另请参见:
常量字段值

FETCH_REVERSE

static final int FETCH_REVERSE
该常量指示将按反向(即从最后一个到第一个)处理结果集中的行处理。 setFetchDirection 方法将此常量用作驱动程序的提示,驱动程序可能忽略它。

 

从以下版本开始:
1.2
另请参见:
常量字段值

FETCH_UNKNOWN

static final int FETCH_UNKNOWN
该常量指示结果集中的行的处理顺序未知。 setFetchDirection 方法将此常量用作驱动程序的提示,驱动程序可能忽略它。

 

另请参见:
常量字段值

TYPE_FORWARD_ONLY

static final int TYPE_FORWARD_ONLY
该常量指示指针只能向前移动的 ResultSet 对象的类型。

 

从以下版本开始:
1.2
另请参见:
常量字段值

TYPE_SCROLL_INSENSITIVE

static final int TYPE_SCROLL_INSENSITIVE
该常量指示可滚动但通常不受其他的更改影响的 ResultSet 对象的类型。

 

从以下版本开始:
1.2
另请参见:
常量字段值

TYPE_SCROLL_SENSITIVE

static final int TYPE_SCROLL_SENSITIVE
该常量指示可滚动并且通常受其他的更改影响的 ResultSet 对象的类型。

 

从以下版本开始:
1.2
另请参见:
常量字段值

CONCUR_READ_ONLY

static final int CONCUR_READ_ONLY
该常量指示不可以更新的 ResultSet 对象的并发模式。

 

从以下版本开始:
1.2
另请参见:
常量字段值

CONCUR_UPDATABLE

static final int CONCUR_UPDATABLE
该常量指示可以更新的 ResultSet 对象的并发模式。

 

从以下版本开始:
1.2
另请参见:
常量字段值

HOLD_CURSORS_OVER_COMMIT

static final int HOLD_CURSORS_OVER_COMMIT
该常量指示调用 Connection.commit 方法时不应关闭 ResultSet 对象。

 

从以下版本开始:
1.4
另请参见:
常量字段值

CLOSE_CURSORS_AT_COMMIT

static final int CLOSE_CURSORS_AT_COMMIT
该常量指示调用 Connection.commit 方法时应该关闭 ResultSet 对象。

 

从以下版本开始:
1.4
另请参见:
常量字段值
方法详细信息

next

boolean next()
throws SQLException
将指针从当前位置下移一行。 ResultSet 指针最初位于第一行之前;第一次调用 next 方法使第一行成为当前行;第二次调用使第二行成为当前行,依此类推。

如果开启了对当前行的输入流,则调用 next 方法将隐式关闭它。读取新行时,将清除 ResultSet 对象的警告链。

 

返回:
如果新的当前行有效,则返回 true;如果不存在下一行,则返回 false
抛出:
SQLException - 如果发生数据库访问错误

close

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

注:当生成 ResultSet 对象的 Statement 对象关闭、重新执行或用来从多个结果的序列检索下一个结果时,该 Statement 对象会自动关闭 ResultSet 对象。垃圾回收 ResultSet 对象时它也会自动关闭。

 

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

wasNull

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

 

返回:
如果最后一个读取的列值为 SQL NULL,则返回 true;否则返回 false
抛出:
SQLException - 如果发生数据库访问错误

getString

String getString(int columnIndex)
throws SQLException
以 Java 编程语言中 String 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getBoolean

boolean getBoolean(int columnIndex)
throws SQLException
以 Java 编程语言中 boolean 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 false
抛出:
SQLException - 如果发生数据库访问错误

getByte

byte getByte(int columnIndex)
throws SQLException
以 Java 编程语言中 byte 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getShort

short getShort(int columnIndex)
throws SQLException
以 Java 编程语言中 short 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getInt

int getInt(int columnIndex)
throws SQLException
以 Java 编程语言中 int 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getLong

long getLong(int columnIndex)
throws SQLException
以 Java 编程语言中 long 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getFloat

float getFloat(int columnIndex)
throws SQLException
以 Java 编程语言中 float 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getDouble

double getDouble(int columnIndex)
throws SQLException
以 Java 编程语言中 double 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getBigDecimal

@Deprecated
BigDecimal getBigDecimal(int columnIndex,
int scale)
throws SQLException
已过时。 

 

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

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
scale - 小数点右边的位数
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getBytes

byte[] getBytes(int columnIndex)
throws SQLException
以 Java 编程语言中 byte 数组的形式检索此 ResultSet 对象的当前行中指定列的值。这些字节表示驱动程序返回的原始值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getDate

Date getDate(int columnIndex)
throws SQLException
以 Java 编程语言中 java.sql.Date 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getTime

Time getTime(int columnIndex)
throws SQLException
以 Java 编程语言中 java.sql.Time 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getTimestamp

Timestamp getTimestamp(int columnIndex)
throws SQLException
以 Java 编程语言中 java.sql.Timestamp 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getAsciiStream

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

注:在获取任何其他列的值之前必须读取返回流中的所有数据。下一次调用获取方法将隐式关闭该流。此外,当调用 InputStream.available 方法时,不管是否存在可用数据,流都可能返回 0

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
以一字节 ASCII 字符流的形式返回传递数据库列值的 Java 输入流;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getUnicodeStream

@Deprecated
InputStream getUnicodeStream(int columnIndex)
throws SQLException
已过时。  使用 getCharacterStream 取代 getUnicodeStream

 

以两字节 Unicode 字符流的形式检索此 ResultSet 对象的当前行中指定列的值。第一个字节是高字节;第二个字节是低字节。然后,可以按块从流中读取值。此方法尤其适合于检索很大的 LONGVARCHAR 值。JDBC 驱动程序将执行从数据库格式到 Unicode 的任何必要转换。

注:在获取任何其他列的值之前必须读取返回流中的所有数据。下一次调用获取方法将隐式关闭该流。此外,当调用 InputStream.available 方法时,不管是否存在可用数据,流都可能返回 0

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
以两字节 Unicode 字符流的形式返回传递数据库列值的 Java 输入流;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getBinaryStream

InputStream getBinaryStream(int columnIndex)
throws SQLException
以未解释字节的二进制流的形式检索此 ResultSet 对象的当前行中指定列的值。然后,可以按块从流中读取值。此方法尤其适合于检索很大的 LONGVARBINARY 值。

注:在获取任何其他列的值之前必须读取返回流中的所有数据。下一次调用获取方法将隐式关闭该流。此外,当调用 InputStream.available 方法时,不管是否存在可用数据,流都可能返回 0

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
以未解释字节的流的形式返回传递数据库列值的 Java 输入流;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getString

String getString(String columnName)
throws SQLException
以 Java 编程语言中 String 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getBoolean

boolean getBoolean(String columnName)
throws SQLException
以 Java 编程语言中 boolean 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 false
抛出:
SQLException - 如果发生数据库访问错误

getByte

byte getByte(String columnName)
throws SQLException
以 Java 编程语言中 byte 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getShort

short getShort(String columnName)
throws SQLException
以 Java 编程语言中 short 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getInt

int getInt(String columnName)
throws SQLException
以 Java 编程语言中 int 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getLong

long getLong(String columnName)
throws SQLException
以 Java 编程语言中 long 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getFloat

float getFloat(String columnName)
throws SQLException
以 Java 编程语言中 float 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getDouble

double getDouble(String columnName)
throws SQLException
以 Java 编程语言中 double 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 0
抛出:
SQLException - 如果发生数据库访问错误

getBigDecimal

@Deprecated
BigDecimal getBigDecimal(String columnName,
int scale)
throws SQLException
已过时。 

 

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

 

参数:
columnName - 列的 SQL 名称
scale - 小数点右边的位数
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getBytes

byte[] getBytes(String columnName)
throws SQLException
以 Java 编程语言中 byte 数组的形式检索此 ResultSet 对象的当前行中指定列的值。这些字节表示驱动程序返回的原始值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getDate

Date getDate(String columnName)
throws SQLException
以 Java 编程语言中的 java.sql.Date 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getTime

Time getTime(String columnName)
throws SQLException
以 Java 编程语言中 java.sql.Time 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getTimestamp

Timestamp getTimestamp(String columnName)
throws SQLException
java.sql.Timestamp 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
列值;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getAsciiStream

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

注:在获取任何其他列的值之前必须读取返回流中的所有数据。下一次调用获取方法将隐式关闭该流。此外,当调用 available 方法时,不管是否存在可用数据,流都可能返回 0

 

参数:
columnName - 列的 SQL 名称
返回:
以一字节 ASCII 字符流的形式返回传递数据库列值的 Java 输入流。如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getUnicodeStream

@Deprecated
InputStream getUnicodeStream(String columnName)
throws SQLException
已过时。  使用 getCharacterStream 代替

 

以两字节 Unicode 字符流的形式检索此 ResultSet 对象的当前行中指定列的值。第一个字节是高字节;第二个字节是低字节。然后,可以按块从流中读取值。此方法尤其适合于检索很大的 LONGVARCHAR 值。采用 JDBC 技术的驱动程序将执行从数据库格式到 Unicode 的任何必要转换。

注:在获取任何其他列的值之前必须读取返回流中的所有数据。下一次调用获取方法将隐式关闭该流。此外,当调用 InputStream.available 方法时,不管是否存在可用数据,流都可能返回 0

 

参数:
columnName - 列的 SQL 名称
返回:
以两字节 Unicode 字符流的形式返回传递数据库列值的 Java 输入流。如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getBinaryStream

InputStream getBinaryStream(String columnName)
throws SQLException
以未解释的 byte 流的形式检索此 ResultSet 对象的当前行中指定列的值。然后可以按块从流中读取该值。此方法尤其适合于检索很大的 LONGVARBINARY 值。

注:在获取任何其他列的值之前必须读取返回流中的所有数据。下一次调用获取方法将隐式关闭该流。此外,当调用 available 方法时,不管是否存在可用数据,流都可能返回 0

 

参数:
columnName - 列的 SQL 名称
返回:
以未解释字节流的形式返回传递数据库列值的 Java 输入流;如果值为 SQL NULL,则返回值为 null
抛出:
SQLException - 如果发生数据库访问错误

getWarnings

SQLWarning getWarnings()
throws SQLException
检索此 ResultSet 对象上的调用报告的第一个警告。此 ResultSet 对象上的后续警告会被链接到此方法返回的 SQLWarning 对象。

每次读取新行时,都会自动清除警告链。不可以在已经关闭的 ResultSet 对象上调用此方法;这样做将导致抛出 SQLException

注:此警告链仅包含 ResultSet 方法产生的警告。Statement 方法(如读取 OUT 参数)产生的任何警告都将链接在 Statement 对象上。

 

返回:
报告的第一个 SQLWarning 对象;如果不存在,则返回 null
抛出:
SQLException - 如果发生数据库访问错误或者在关闭的结果集上调用此方法

clearWarnings

void clearWarnings()
throws SQLException
清除在此 ResultSet 对象上报告的所有警告。调用此方法后,在为此 ResultSet 对象报告新的警告之前, getWarnings 方法将返回 null

 

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

getCursorName

String getCursorName()
throws SQLException
检索此 ResultSet 对象使用的 SQL 指针的名称。

在 SQL 中,通过命名的指针检索结果表。通过一个引用指针名称来确定位置的更新/删除语句,可以更新或删除结果集的当前行。为了确保指针具有支持更新的适当隔离级别,指针的 SELECT 语句的形式应该为 SELECT FOR UPDATE。如果省略 FOR UPDATE,则定位更新可能失败。

JDBC API 通过提供 ResultSet 对象使用的 SQL 指针的名称支持此 SQL 功能。ResultSet 对象的当前行也是此 SQL 指针的当前行。

注:如果不支持定位更新,则抛出 SQLException

 

返回:
ResultSet 对象的指针的 SQL 名称
抛出:
SQLException - 如果发生数据库访问错误

getMetaData

ResultSetMetaData getMetaData()
throws SQLException
检索此 ResultSet 对象的列的编号、类型和属性。

 

返回:
ResultSet 对象的列的描述
抛出:
SQLException - 如果发生数据库访问错误

getObject

Object getObject(int columnIndex)
throws SQLException

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

此方法将以 Java 对象的形式返回给定列的值。Java 对象的类型将为与该列的 SQL 类型相对应的默认 Java 对象类型,它遵守在 JDBC 规范中指定的内置类型的映射关系。如果值为 SQL NULL,则驱动程序返回一个 Java null

此方法还可用于读取特定于数据库的抽象数据类型。在 JDBC 2.0 API 中,可以扩展 getObject 方法的行为来实现 SQL 自定义类型的数据。当列包含结构化的或独特的值时,此方法的行为类似于调用:getObject(columnIndex, this.getStatement().getConnection().getTypeMap())

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
保存列值的 java.lang.Object
抛出:
SQLException - 如果发生数据库访问错误

getObject

Object getObject(String columnName)
throws SQLException

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

此方法将以 Java 对象的形式返回给定列的值。Java 对象的类型将为与该列的 SQL 类型相对应的默认 Java 对象类型,它遵守在 JDBC 规范中指定的内置类型的映射关系。如果值为 SQL NULL,则驱动程序返回一个 Java null

此方法还可用于读取特定于数据库的抽象数据类型。

在 JDBC 2.0 API 中,可以扩展 getObject 方法的行为来实现 SQL 自定义类型的数据。当列包含结构化的或独特的值时,此方法的行为类似于调用:getObject(columnIndex, this.getStatement().getConnection().getTypeMap())

 

参数:
columnName - 列的 SQL 名称
返回:
保存列值的 java.lang.Object
抛出:
SQLException - 如果发生数据库访问错误

findColumn

int findColumn(String columnName)
throws SQLException
将给定的 ResultSet 列名称映射到其 ResultSet 列索引。

 

参数:
columnName - 列的名称
返回:
给定列名称的列索引
抛出:
SQLException - 如果 ResultSet 对象不包含 columnName 或者发生数据库访问错误

getCharacterStream

Reader getCharacterStream(int columnIndex)
throws SQLException
java.io.Reader 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
包含列值的 java.io.Reader 对象;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getCharacterStream

Reader getCharacterStream(String columnName)
throws SQLException
java.io.Reader 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的名称
返回:
包含列值的 java.io.Reader 对象;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getBigDecimal

BigDecimal getBigDecimal(int columnIndex)
throws SQLException
以具有全精度的 java.math.BigDecimal 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
返回:
列值(全精度);如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getBigDecimal

BigDecimal getBigDecimal(String columnName)
throws SQLException
以具有全精度的 java.math.BigDecimal 的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列名称
返回:
列值(全精度);如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

isBeforeFirst

boolean isBeforeFirst()
throws SQLException
检索指针是否位于此 ResultSet 对象的第一行之前。

 

返回:
如果指针位于第一行之前,则返回 true;如果指针位于任何其他位置或者结果集不包含任何行,则返回 false
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

isAfterLast

boolean isAfterLast()
throws SQLException
检索指针是否位于此 ResultSet 对象的最后一行之后。

 

返回:
如果指针位于最后一行之后,则返回 true;如果指针位于任何其他位置或者结果集不包含任何行,则返回 false
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

isFirst

boolean isFirst()
throws SQLException
检索指针是否位于此 ResultSet 对象的第一行。

 

返回:
如果指针位于第一行,则返回 true;否则返回 false
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

isLast

boolean isLast()
throws SQLException
检索指针是否位于此 ResultSet 对象的最后一行。注:调用 isLast 方法可能开销很大,因为 JDBC 驱动程序可能需要再往后获取一行,以确定当前行是否为结果集中的最后一行。

 

返回:
如果指针位于最后一行上,则返回 true;否则返回 false
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

beforeFirst

void beforeFirst()
throws SQLException
将指针移动到此 ResultSet 对象的开头,正好位于第一行之前。如果结果集中不包含任何行,则此方法无效。

 

抛出:
SQLException - 如果发生数据库访问错误或者结果集类型为 TYPE_FORWARD_ONLY
从以下版本开始:
1.2

afterLast

void afterLast()
throws SQLException
将指针移动到此 ResultSet 对象的末尾,正好位于最后一行之后。如果结果集中不包含任何行,则此方法无效。

 

抛出:
SQLException - 如果发生数据库访问错误或者结果集类型为 TYPE_FORWARD_ONLY
从以下版本开始:
1.2

first

boolean first()
throws SQLException
将指针移动到此 ResultSet 对象的第一行。

 

返回:
如果指针位于有效行,则返回 true;如果结果集中不存在任何行,则返回 false
抛出:
SQLException - 如果发生数据库访问错误或者结果集类型为 TYPE_FORWARD_ONLY
从以下版本开始:
1.2

last

boolean last()
throws SQLException
将指针移动到此 ResultSet 对象的最后一行。

 

返回:
如果指针位于有效行,则返回 true;如果结果集中不存在任何行,则返回 false
抛出:
SQLException - 如果发生数据库访问错误或者结果集类型为 TYPE_FORWARD_ONLY
从以下版本开始:
1.2

getRow

int getRow()
throws SQLException
检索当前行编号。第一行为 1 号,第二行为 2 号,依此类推。

 

返回:
当前行的编号;如果不存在当前行,则返回 0
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

absolute

boolean absolute(int row)
throws SQLException
将指针移动到此 ResultSet 对象的给定行编号。

如果行编号为正,则将指针移动到相对于结果集开头的给定行编号。第一行为行 1,第二行为行 2,依此类推。

如果给定行编号为负,则将指针移动到相对于结果集末尾的绝对行位置。例如,调用方法 absolute(-1) 将指针置于最后一行;调用方法 absolute(-2) 将指针移动到倒数第二行,依此类推。

试图将指针置于结果集的第一行/最后一行之外将导致指针位于第一行之前或最后一行之后。

注:调用 absolute(1) 等效于调用 first()。调用 absolute(-1) 等效于调用 last()

 

参数:
row - 指针应该移动到的行的编号。正的编号指示从结果集开头开始计数的行编号;负的编号指示从结果集末尾开始计数的行编号
返回:
如果指针位于结果集上,则返回 true;否则返回 false
抛出:
SQLException - 如果发生数据库访问错误或者结果集类型为 TYPE_FORWARD_ONLY
从以下版本开始:
1.2

relative

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

注:调用方法 relative(1) 等效于调用方法 next(),而调用方法 relative(-1) 等效于调用方法 previous()

 

参数:
rows - 指定从当前行开始移动的行数的 int;正数表示指针向前移动;负数表示指针向后移动
返回:
如果指针位于行上,则返回 true;否则返回 false
抛出:
SQLException - 如果发生数据库访问错误、不存在当前行或者结果集类型为 TYPE_FORWARD_ONLY
从以下版本开始:
1.2

previous

boolean previous()
throws SQLException
将指针移动到此 ResultSet 对象的上一行。

 

返回:
如果指针位于有效行上,则返回 true;如果它不在结果集中,则返回 false
抛出:
SQLException - 如果发生数据库访问错误或者结果集类型为 TYPE_FORWARD_ONLY
从以下版本开始:
1.2

setFetchDirection

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

 

参数:
direction - 指定建议获取方向的 intResultSet.FETCH_FORWARDResultSet.FETCH_REVERSEResultSet.FETCH_UNKNOWN 之一
抛出:
SQLException - 如果发生数据库访问错误,或者结果集类型为 TYPE_FORWARD_ONLY 但获取方向不是 FETCH_FORWARD
从以下版本开始:
1.2
另请参见:
Statement.setFetchDirection(int), getFetchDirection()

getFetchDirection

int getFetchDirection()
throws SQLException
检索此 ResultSet 对象的获取方向。

 

返回:
ResultSet 对象的当前获取方向
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2
另请参见:
setFetchDirection(int)

setFetchSize

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

 

参数:
rows - 要获取的行数
抛出:
SQLException - 如果发生数据库访问错误或者不满足条件 0 <= rows <= Statement.getMaxRows()
从以下版本开始:
1.2
另请参见:
getFetchSize()

getFetchSize

int getFetchSize()
throws SQLException
检索此 ResultSet 对象的获取大小。

 

返回:
ResultSet 对象的当前获取大小
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2
另请参见:
setFetchSize(int)

getType

int getType()
throws SQLException
检索此 ResultSet 对象的类型。类型由创建结果集的 Statement 对象确定。

 

返回:
ResultSet.TYPE_FORWARD_ONLYResultSet.TYPE_SCROLL_INSENSITIVEResultSet.TYPE_SCROLL_SENSITIVE
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getConcurrency

int getConcurrency()
throws SQLException
检索此 ResultSet 对象的并发模式。使用的并发由创建结果集的 Statement 对象确定。

 

返回:
并发类型, ResultSet.CONCUR_READ_ONLYResultSet.CONCUR_UPDATABLE
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

rowUpdated

boolean rowUpdated()
throws SQLException
检索是否已更新当前行。返回值取决于结果集是否可以检测到更新。

 

返回:
如果 (1) 所有者或其他人已对行进行可见更新 (2) 可以检测到更新都成立,则返回 true
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2
另请参见:
DatabaseMetaData.updatesAreDetected(int)

rowInserted

boolean rowInserted()
throws SQLException
检索当前行是否已有插入。返回值取决于此 ResultSet 对象是否可以检测到可见插入。

 

返回:
如果行已有插入并且检测到插入,则返回 true;否则返回 false
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2
另请参见:
DatabaseMetaData.insertsAreDetected(int)

rowDeleted

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

 

返回:
如果删除了行并且检测到删除,则返回 true;否则返回 false
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2
另请参见:
DatabaseMetaData.deletesAreDetected(int)

updateNull

void updateNull(int columnIndex)
throws SQLException
为可以为 null 的列提供 null 值。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateBoolean

void updateBoolean(int columnIndex,
boolean x)
throws SQLException
boolean 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateByte

void updateByte(int columnIndex,
byte x)
throws SQLException
byte 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateShort

void updateShort(int columnIndex,
short x)
throws SQLException
short 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateInt

void updateInt(int columnIndex,
int x)
throws SQLException
int 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateLong

void updateLong(int columnIndex,
long x)
throws SQLException
long 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会不更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateFloat

void updateFloat(int columnIndex,
float x)
throws SQLException
float 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateDouble

void updateDouble(int columnIndex,
double x)
throws SQLException
double 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateBigDecimal

void updateBigDecimal(int columnIndex,
BigDecimal x)
throws SQLException
java.math.BigDecimal 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateString

void updateString(int columnIndex,
String x)
throws SQLException
String 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateBytes

void updateBytes(int columnIndex,
byte[] x)
throws SQLException
byte 数组值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateDate

void updateDate(int columnIndex,
Date x)
throws SQLException
java.sql.Date 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateTime

void updateTime(int columnIndex,
Time x)
throws SQLException
java.sql.Time 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateTimestamp

void updateTimestamp(int columnIndex,
Timestamp x)
throws SQLException
java.sql.Timestamp 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateAsciiStream

void updateAsciiStream(int columnIndex,
InputStream x,
int length)
throws SQLException
用 ascii 流值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
length - 流的长度
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateBinaryStream

void updateBinaryStream(int columnIndex,
InputStream x,
int length)
throws SQLException
用二进制流值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
length - 流的长度
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateCharacterStream

void updateCharacterStream(int columnIndex,
Reader x,
int length)
throws SQLException
用字符流值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
length - 流的长度
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateObject

void updateObject(int columnIndex,
Object x,
int scale)
throws SQLException
Object 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
scale - 对于 java.sql.Types.DECIMAjava.sql.Types.NUMERIC 类型,此参数是小数点后面的位数。对于其他所有类型,将忽略此值。
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateObject

void updateObject(int columnIndex,
Object x)
throws SQLException
Object 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateNull

void updateNull(String columnName)
throws SQLException
null 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnName - 列的名称
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateBoolean

void updateBoolean(String columnName,
boolean x)
throws SQLException
boolean 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateByte

void updateByte(String columnName,
byte x)
throws SQLException
byte 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateShort

void updateShort(String columnName,
short x)
throws SQLException
short 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateInt

void updateInt(String columnName,
int x)
throws SQLException
int 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateLong

void updateLong(String columnName,
long x)
throws SQLException
long 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateFloat

void updateFloat(String columnName,
float x)
throws SQLException
float 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateDouble

void updateDouble(String columnName,
double x)
throws SQLException
double 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateBigDecimal

void updateBigDecimal(String columnName,
BigDecimal x)
throws SQLException
java.sql.BigDecimal 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateString

void updateString(String columnName,
String x)
throws SQLException
String 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateBytes

void updateBytes(String columnName,
byte[] x)
throws SQLException
用字节数组值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateDate

void updateDate(String columnName,
Date x)
throws SQLException
java.sql.Date 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateTime

void updateTime(String columnName,
Time x)
throws SQLException
java.sql.Time 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateTimestamp

void updateTimestamp(String columnName,
Timestamp x)
throws SQLException
java.sql.Timestamp 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateAsciiStream

void updateAsciiStream(String columnName,
InputStream x,
int length)
throws SQLException
用 ascii 流值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnName - 列的名称
x - 新列值
length - 流的长度
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateBinaryStream

void updateBinaryStream(String columnName,
InputStream x,
int length)
throws SQLException
用二进制流值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnName - 列的名称
x - 新列值
length - 流的长度
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateCharacterStream

void updateCharacterStream(String columnName,
Reader reader,
int length)
throws SQLException
用字符流值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnName - 列的名称
reader - 包含新列值的 java.io.Reader 对象
length - 流的长度
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateObject

void updateObject(String columnName,
Object x,
int scale)
throws SQLException
Object 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnName - 列的名称
x - 新列值
scale - 对于 java.sql.Types.DECIMALjava.sql.Types.NUMERIC 类型,此参数是小数点后面的位数。对于其他所有类型,将忽略此值。
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

updateObject

void updateObject(String columnName,
Object x)
throws SQLException
Object 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

insertRow

void insertRow()
throws SQLException
将插入行的内容插入到此 ResultSet 对象和数据库中。调用此方法时,指针必须位于插入行上。

 

抛出:
SQLException - 如果发生数据库访问错误,如果在指针不位于插入行上时调用此方法,或者插入行中所有不可为 null 的列中还存在未分配值的列
从以下版本开始:
1.2

updateRow

void updateRow()
throws SQLException
用此 ResultSet 对象的当前行的新内容更新底层数据库。指针不位于插入行上时不能调用此方法。

 

抛出:
SQLException - 如果发生数据库访问错误或者在指针不位于插入行上时调用了此方法
从以下版本开始:
1.2

deleteRow

void deleteRow()
throws SQLException
从此 ResultSet 对象和底层数据库中删除当前行。指针不位于插入行上时不能调用此方法。

 

抛出:
SQLException - 如果发生数据库访问错误或者在指针不位于插入行上时调用了此方法
从以下版本开始:
1.2

refreshRow

void refreshRow()
throws SQLException
用数据库中的最近值刷新当前行。指针不位于插入行上时不能调用此方法。

refreshRow 方法提供一种让应用程序显式告知 JDBC 驱动程序从数据库重新获取行的方式。应用程序可能需要在 JDBC 驱动程序完成缓存或预获取操作后调用 refreshRow,以便从数据库获取行的最新值。如果获取大小大于 1,则 JDBC 驱动程序可以一次实际刷新多行。

应根据事务隔离级别和指针敏感度确定是否重新获取所有值。如果在调用更新方法之后,但在调用 updateRow 方法之前调用 refreshRow,则会丢失对行所作的更新。频繁调用方法 refreshRow 可能导致性能下降。

 

抛出:
SQLException - 如果发生数据库访问错误或者在指针不位于插入行上时调用了此方法
从以下版本开始:
1.2

cancelRowUpdates

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

 

抛出:
SQLException - 如果发生数据库访问错误或者在指针不位于插入行上时调用了此方法
从以下版本开始:
1.2

moveToInsertRow

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

 

抛出:
SQLException - 如果发生数据库访问错误或者结果集不可更新
从以下版本开始:
1.2

moveToCurrentRow

void moveToCurrentRow()
throws SQLException
将指针移动到记住的指针位置,通常为当前行。如果指针不位于插入行上,则此方法无效。

 

抛出:
SQLException - 如果发生数据库访问错误或者结果集不可更新
从以下版本开始:
1.2

getStatement

Statement getStatement()
throws SQLException
检索生成此 ResultSet 对象的 Statement 对象。如果结果集是以其他方式生成的(如通过 DatabaseMetaData 方法),则此方法返回 null

 

返回:
生成此 ResultSet 对象的 Statment 对象;如果结果集是以其他方法生成的,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getObject

Object getObject(int i,
Map<String,Class<?>> map)
throws SQLException
以 Java 编程语言中 Object 的形式检索此 ResultSet 对象的当前行中指定列的值。如果值为 SQL NULL,则驱动程序返回一个 Java null。此方法使用给定的 Map 对象作为正在检索的 SQL 结构化或独特类型的自定义映射关系。

 

参数:
i - 第一个列是 1,第二个列是 2,……
map - 一个 java.util.Map 对象,包含从 SQL 类型名称到 Java 编程语言中类的映射关系
返回:
表示 SQL 值的 Java 编程语言中的 Object
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getRef

Ref getRef(int i)
throws SQLException
以 Java 编程语言中 Ref 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
i - 第一个列是 1,第二个列是 2,……
返回:
表示 SQL REF 值的 Ref 对象
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getBlob

Blob getBlob(int i)
throws SQLException
以 Java 编程语言中 Blob 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
i - 第一个列是 1,第二个列是 2,……
返回:
表示指定列中的 SQL BLOB 值的 BLOB 对象
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getClob

Clob getClob(int i)
throws SQLException
以 Java 编程语言中 Clob 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
i - 第一个列是 1,第二个列是 2,……
返回:
表示指定列中的 SQL Clob 值的 Clob 对象
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getArray

Array getArray(int i)
throws SQLException
以 Java 编程语言中 Array 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
i - 第一个列是 1,第二个列是 2,……
返回:
表示指定列中的 SQL Array 值的 Array 对象
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getObject

Object getObject(String colName,
Map<String,Class<?>> map)
throws SQLException
以 Java 编程语言中 Object 的形式检索此 ResultSet 对象的当前行中指定列的值。如果值为 SQL NULL,则驱动程序返回一个 Java null。此方法使用指定的 Map 对象自定义映射关系(如果合适)。

 

参数:
colName - 列的名称,根据它来检索值
map - 包含从 SQL 类型名称到 Java 编程语言中类的映射关系的 java.util.Map 对象
返回:
表示指定列中的 SQL 值的 Object
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getRef

Ref getRef(String colName)
throws SQLException
以 Java 编程语言中 Ref 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
colName - 列名称
返回:
表示指定列中 SQL Ref 值的 Ref 对象
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getBlob

Blob getBlob(String colName)
throws SQLException
以 Java 编程语言中 Blob 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
colName - 列的名称,根据它检索值
返回:
表示指定列中 SQL Blob 值的 Blob 对象
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getClob

Clob getClob(String colName)
throws SQLException
以 Java 编程语言中 Clob 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
colName - 列的名称,根据它检索值
返回:
表示指定列中 SQL CLOB 值的 Clob 对象
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getArray

Array getArray(String colName)
throws SQLException
以 Java 编程语言中 Array 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
colName - 列的名称,根据它检索值
返回:
表示指定列中 SQL ARRAY 值的 ARRAY 对象
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getDate

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

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
cal - 在构造日期时使用的 java.util.Calendar 对象
返回:
java.sql.Date 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getDate

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

 

参数:
columnName - 列的 SQL 名称,根据它检索值
cal - 在构造日期时使用的 java.util.Calendar 对象
返回:
java.sql.Date 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getTime

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

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
cal - 在构造时间时使用的 java.util.Calendar 对象
返回:
java.sql.Time 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getTime

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

 

参数:
columnName - 列的 SQL 名称
cal - 在构造时间时使用的 java.util.Calendar 对象
返回:
java.sql.Time 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getTimestamp

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

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
cal - 在构造时间戳时使用的 java.util.Calendar 对象
返回:
java.sql.Timestamp 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getTimestamp

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

 

参数:
columnName - 列的 SQL 名称
cal - 在构造日期时使用的 java.util.Calendar 对象
返回:
java.sql.Timestamp 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

getURL

URL getURL(int columnIndex)
throws SQLException
以 Java 编程语言中 java.net.URL 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnIndex - 索引,其中第一个列是 1、第二个列是 2,……
返回:
java.net.URL 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误或者 URL 是错误的
从以下版本开始:
1.4

getURL

URL getURL(String columnName)
throws SQLException
以 Java 编程语言中 java.net.URL 对象的形式检索此 ResultSet 对象的当前行中指定列的值。

 

参数:
columnName - 列的 SQL 名称
返回:
java.net.URL 对象形式的列值;如果值为 SQL NULL,则返回值为 Java 编程语言中的 null
抛出:
SQLException - 如果发生数据库访问错误或者 URL 是错误的
从以下版本开始:
1.4

updateRef

void updateRef(int columnIndex,
Ref x)
throws SQLException
java.sql.Ref 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.4

updateRef

void updateRef(String columnName,
Ref x)
throws SQLException
java.sql.Ref 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateBlob

void updateBlob(int columnIndex,
Blob x)
throws SQLException
java.sql.Blob 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.4

updateBlob

void updateBlob(String columnName,
Blob x)
throws SQLException
java.sql.Blob 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateClob

void updateClob(int columnIndex,
Clob x)
throws SQLException
java.sql.Clob 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.4

updateClob

void updateClob(String columnName,
Clob x)
throws SQLException
java.sql.Clob 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

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

updateArray

void updateArray(int columnIndex,
Array x)
throws SQLException
java.sql.Array 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnIndex - 第一个列是 1,第二个列是 2,……
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.4

updateArray

void updateArray(String columnName,
Array x)
throws SQLException
java.sql.Array 值更新指定列。更新方法用于更新当前行或插入行中的列值,并不会更新底层数据库;更新数据库要调用 updateRowinsertRow 方法。

 

参数:
columnName - 列的名称
x - 新列值
抛出:
SQLException - 如果发生数据库访问错误