用2 的话,不是更浪费嘛?每次都把所有数据取到Resultset中,这个过程已经够费的,然后只取其中一段.
第二个用户请求的时候又是一样,每次取到ResultSet中的数据实际只用到了一部分.....
也许我的分析本身有问题,希望给予指点

解决方案 »

  1.   

    我不是SQL Server 2000数据库专家,你到CSDN数据库社区去问问看。
      

  2.   

    用掐头取尾法来做。给你一个oracle版本的。public CachedRowSet getRecord(String sql, int curpage, int perpage) {
    CachedRowSet rs = null;
    DB mydb = new DB();
    try {
    int i = curPage - 1;
    String query = null;
    query =
    "SELECT * FROM     (     SELECT A.*, rownum r     FROM          ("
    + sql
    + ") A     WHERE rownum <= "
    + perPage * curPage
    + "     ) B WHERE r > "
    + perPage * (curPage - 1);
    System.out.println(query);
    rs = mydb.executeQuery(query);
    } catch (Exception e) {
    System.out.println(e.getMessage());
    }
    return rs;
    }