ResultSet 接口提供对数据表的访问。ResultSet 对象通常是通过执行“语句”来生成的。
ResultSet 始终有一个游标指向其当前数据行。最初,游标定位在第一行的前面。next() 方法将游标移至下一行。
getXXX 方法会检索当前行的列值。可使用列的索引号或列的名称来检索这些值。通常,使用列索引将更为有效。列是从 1 开始编号的。
java.sql 包
公共接口 ResultSet
表 102 列示 ResultSet 接口中 DB2 Everyplace 支持的字段。
字段类型 | 字段 |
---|---|
static int | CONCUR_READ_ONLY 该常量指示不能更新的 ResultSet 对象的并行性方式。 注意:DB2 Everyplace 不支持 CONCUR_UPDATABLE。如果在创建“语句”对象时对 ResultSet 对象的并行性方式指定 CONCUR_UPDATABLE,则 DB2 Everyplace JDBC 驱动程序将对产生“语句”对象的“连接”对象发出 SQLWarning 并使用 CONCUR_READ_ONLY 代替。 |
static int | TYPE_FORWARD_ONLY 该常量指示其游标只能向前移动的 ResultSet 对象的类型。 |
static int | TYPE_SCROLL_INSENSITIVE 该常量指示可滚动但通常对他人所作的更改不敏感的 ResultSet 对象的类型。注意: 不要经常使用此类型的 ResultSet 对象,原因是它可能会影响性能。此类型使用 SQL_INSENSITIVE 作为 CLI 语句属性 SQL_ATTR_CURSOR_SENSITIVITY 的值。有关详细信息,参阅 CLI 函数 SQLSetStmtAttr 的文档。 |
static int | TYPE_SCROLL_SENSITIVE 该常量指示可滚动且通常对他人所作的更改敏感的 ResultSet 对象的类型。注意: 此类型使用 SQL_UNSPECIFIED 作为 CLI 语句属性 SQL_ATTR_CURSOR_SENSITIVITY 的值。有关详细信息,参阅 CLI 函数 SQLSetStmtAttr 的文档。 |
表 103 列示 ResultSet 接口中 DB2 Everyplace 支持的方法。
方法返回值类型 | 方法 |
---|---|
boolean | absolute(int row) JDBC 2.0。将游标移至结果集中的给定行号。 |
void | afterLast() JDBC 2.0。将游标移至结果集的末尾,正好在最后一行的后面。 |
void | beforeFirst() JDBC 2.0。将游标移至结果集的前方,正好在第一行的前面。 |
void | clearWarnings() 清除此 ResultSet 对象上报告的所有警告。 |
void | close() 立即释放此 ResultSet 对象的数据库和 JDBC 资源,而不是等待对象自动关闭时才释放它们。 |
int | findColumn(String columnName) 将给定 ResultSet 列名映射至其 ResultSet 列索引。 |
boolean | first() JDBC 2.0。将游标移至结果集中的第一行。 |
BigDecimal | getBigDecimal(int columnIndex) JDBC 2.0。以具有全部精度的 java.math.BigDecimal 对象形式获取当前行中某个列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。 |
BigDecimal | getBigDecimal(int columnIndex, int scale) 以 Java 编程语言中的 java.math.BigDecimal 对象形式获取此 ResultSet 对象当前行中指定列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。不受支持。 |
BigDecimal | getBigDecimal(String columnName) JDBC 2.0。以具有全部精度的 java.math.BigDecimal 对象形式获取当前行中某个列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。 |
BigDecimal | getBigDecimal(String columnName, int scale) 以 Java 编程语言中的 java.math.BigDecimal 对象形式获取此 ResultSet 对象当前行中指定列的值。Palm OS 的 DB2 Everyplace JDBC 驱动程序不支持此方法。不受支持。 |
Blob | getBlob(int columnIndex) JDBC 2.0。获取此 ResultSet 对象的当前行中的 BLOB 值。 |
Blob | getBlob(String columnName) JDBC 2.0。获取此 ResultSet 对象的当前行中的 BLOB 值。 |
boolean | getBoolean(int columnIndex) 以 Java 布尔值形式获取当前行中某列的值。 |
boolean | getBoolean(String columnName) 以 Java 布尔值形式获取当前行中某列的值。 |
byte | getByte(int columnIndex) 以 Java 编程语言中的字节形式获取此 ResultSet 对象当前行中指定列的值。 |
byte | getByte(String columnName) 以 Java 编程语言中的字节形式获取此 ResultSet 对象当前行中指定列的值。 |
byte[] | getBytes(int columnIndex) 以 Java 编程语言中的字节数组形式获取此 ResultSet 对象当前行中指定列的值。 |
byte[] | getBytes(String columnName) 以 Java 编程语言中的字节数组形式获取此 ResultSet 对象当前行中指定列的值。 |
int | getConcurrency() JDBC 2.0。返回结果集的并行性方式。 |
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 对象的当前行中指定列的值。 |
double | getDouble(int columnIndex) 以 Java 双精度形式获取当前行中某列的值。 |
double | getDouble(String columnName) 以 Java 双精度形式获取当前行中某列的值。 |
float | getFloat(int columnIndex) 以 Java 浮点形式获取当前行中某列的值。 |
float | getFloat(String columnName) 以 Java 浮点形式获取当前行中某列的值。 |
int | getInt(int columnIndex) 以 Java 编程语言中的整数形式获取此 ResultSet 对象当前行中指定列的值。 |
int | getInt(String columnName) 以 Java 编程语言中的整数形式获取此 ResultSet 对象的当前行中指定列的值。 |
long | getLong(int columnIndex) 以 Java 长整型形式获取当前行中某列的值。 |
long | getLong(String columnName) 以 Java 长整型形式获取当前行中某列的值。 |
ResultSetMetaData | getMetaData() 检索此 ResultSet 对象的列的数目、类型和属性。 |
Object | getObject(int columnIndex) 以 Java 对象形式获取当前行中某列的值。 |
Object | getObject(String columnName) 以 Java 对象形式获取当前行中某列的值。 |
int | getRow() JDBC 2.0。检索当前行号。 |
short | getShort(int columnIndex) 以 Java 编程语言中的 short 形式获取此 ResultSet 对象当前行中指定列的值。 |
short | getShort(String columnName) 以 Java 编程语言中的 short 形式获取此 ResultSet 对象当前行中指定列的值。 |
Statement | getStatement() JDBC 2.0。返回产生此 ResultSet 对象的“语句”。 |
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(String columnName) 以 Java 编程语言中的 java.sql.Date 对象形式获取此 ResultSet 对象的当前行中指定列的值。 |
Timestamp | getTimestamp(String columnName) 以 Java 编程语言中的 java.sql.Timestamp 对象形式获取此 ResultSet 对象的当前行中指定列的值。 |
Timestamp | getTimestamp(int columnIndex) 以 Java 编程语言中的 java.sql.Timestamp 对象形式获取此 ResultSet 对象的当前行中指定列的值。 |
int | getType() JDBC 2.0。返回此结果集的类型。 |
SQLWarning | getWarnings() 返回此 ResultSet 上的调用报告的首次警告。 |
boolean | isAfterLast() JDBC 2.0。指示游标是否在结果集中的最后一行后面。 |
boolean | isBeforeFirst() JDBC 2.0。指示游标是否在结果集中的第一行前面。 |
boolean | isFirst() JDBC 2.0。指示游标是否在结果集中的第一行上。 |
boolean | isLast() JDBC 2.0。指示游标是否在结果集中的最后一行上。对于具有类型 TYPE_FORWARD_ONLY 的结果集,不支持此方法。 |
boolean | last() JDBC 2.0。将游标移至结果集中的最后一行。 |
boolean | next() 将游标从当前位置向下移动一行。 |
boolean | previous() JDBC 2.0。将游标移至结果集中的前一行。 |
boolean | relative(int rows) JDBC 2.0。将游标移动相对行数,正数或负数。 |
boolean | wasNull() 报告读取的最后一列是否具有值 SQL NULL。 |
相关任务
相关参考