Statement st = conn.createStatement(int resultSetType, int resultSetConcurrency)
ResultSet rs = st.executeQuery(sqlStr)
ResultSet.TYPE_FORWARD_ONLY只能向前滚动
       ResultSet.TYPE_SCROLL_INSENSITIVE和Result.TYPE_SCROLL_SENSITIVE这两个方法都能够实现任意的前后滚动,使用各种移动的ResultSet指针的方法。二者的区别在于前者对于修改不敏感,而后者对于修改敏感。
resultSetConcurency是设置ResultSet对象能够修改的,取值如下:
       ResultSet.CONCUR_READ_ONLY 设置为只读类型的参数。
       ResultSet.CONCUR_UPDATABLE 设置为可修改类型的参数。

解决方案 »

  1.   

    以下两种方法的共性:返回可滚动的结果集,当数据库变化时,当前结果集同步改变。
    不可用结果集更新数据库:
    con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
    可用结果集直接更新数据库:
    con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATETABLE);
      

  2.   

    Statement stmt=con.createStatement();
    如果不带参数,意思就是记录集不可滚动,那就不可以用while(rs.next())循环写出每一条记录了?