JDBC 可滚动结果集
2013-12-08 12:06
344 查看
JDBC提供了可滚动结果集,可以向前滚,也可以向后滚。下面是几个API
可更新结果集
可回滚结果集,可以用来分页,但是这种方法有个很大的缺点,必须将这些记录都读到内存中。对于有些数据库不支持分页的,可以使用此方法来进行分页。
//demo
Statement st = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);//可回滚参数 ResultSet rs = st.executeQuery(sql); rs.beforeFirst();//移到ResultSet最前面 rs.afterLast();//移到ResultSet最后面 rs.first();//获取第一跳记录 rs.isFirst();//是否是第一跳记录 rs.last();//获取最后一条记录 rs.isLast(); rs.absolute(9);//跳到第9条记录 rs.moveToInsertRow(); rs.next();//移到下一行 rs.previous();//移到上一行
可更新结果集
conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); rs.updateString("col name", "new value"); rs.updateRow();
可回滚结果集,可以用来分页,但是这种方法有个很大的缺点,必须将这些记录都读到内存中。对于有些数据库不支持分页的,可以使用此方法来进行分页。
//demo
package cn.itcast.jdbc; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class ScrollTest { /** * @param args * @throws SQLException */ public static void main(String[] args) throws SQLException { scroll(); } static void scroll() throws SQLException { Connection conn = null; Statement st = null; ResultSet rs = null; try { // 2.建立连接 conn = JdbcUtils.getConnection(); st = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); rs = st .executeQuery("select id, name, money, birthday from user limit 150, 10"); while (rs.next()) { System.out.println(rs.getObject("id") + "\t" + rs.getObject("name") + "\t" + rs.getObject("birthday") + "\t" + rs.getObject("money")); } System.out.println("------------"); rs.absolute(150); //跳到第150条记录,并取出连续10条 int i = 0; while (rs.next() && i < 10) { i++; System.out.println(rs.getObject("id") + "\t" + rs.getObject("name") + "\t" + rs.getObject("birthday") + "\t" + rs.getObject("money")); } // if (rs.previous()) // System.out.println(rs.getObject("id") + "\t" // + rs.getObject("name") + "\t" // + rs.getObject("birthday") + "\t" // + rs.getObject("money")); } finally { JdbcUtils.free(rs, st, conn); } } }
相关文章推荐
- JDBC学习之六:JDBC处理可滚动的结果集
- jdbc处理可以滚动的结果集
- j2ee-规范-jdbc-可滚动结果集
- JDBC可滚动可更新结果集的探究(来自网络)
- JDBC入门(2)--- ResultSet之滚动结果集
- JDBC可滚动可更新感知更新结果集
- 【学习摘记】马士兵JDBC技术_课时14_JDBC处理可滚动的结果集
- JDBC可滚动和可更新结果集
- JDBC 如何使用可滚动 可更新结果集
- [Java] JDBC 07 处理可滚动的结果集
- [Java] JDBC 07 处理可滚动的结果集
- JDBC之处理可滚动的结果集和可更新的结果集
- JDBC 可以滚动的结果集
- 关于JDBC(四)--- 可滚动和可更新结果集
- JDBC 如何使用可滚动 可更新结果集
- Java通过JDBC连接Oracle之后查询结果和在sqlplus查询结果不一样
- JDBC取回自增涨键和取多重数据结果
- [Java] JDBC 08 处理可更新的结果集 (sun提供了这样的接口,但是不见得所有的数据库厂商都支持)
- 测试可滚动的结果
- JDBC事务及将查询结果封装成对象(通用)