利用resultset分页,如何做,需要什么参数?谢谢

解决方案 »

  1.   

    分页一般语法如下:
    CREATE OR REPLACE FUNCTION GG(S INT, E INT) RETURN SYS_REFCURSOR AS
      R_C SYS_REFCURSOR;
    BEGIN
      OPEN R_C FOR 'SELECT ename,empno
          FROM SCOTT.EMP
         WHERE ROWID IN (SELECT RID
                           FROM (SELECT ROWNUM RNO, ROWID RID
                                   FROM (SELECT ROWID
                                           FROM SCOTT.EMP
                                          ORDER BY ENAME)
                                  WHERE ROWNUM <= :E)
                          WHERE RNO >= :S)'
        USING E, S;
      RETURN R_C;
    END;
    /DECLARE
     r_c SYS_REFCURSOR;
     v_c1 VARCHAR2(10);
     v_c2 VARCHAR2(10);
    BEGIN
     r_c:=gg(2,6);
     LOOP
      FETCH r_c INTO v_c1,v_c2;
      EXIT WHEN r_c%NOTFOUND;
      dbms_output.put_Line(v_c1||'-'||v_c2);
     END LOOP;
     CLOSE r_c;
    END;
    /
      

  2.   


    不错,使用jdbc就可以这样
    hibernate就更简便了
      

  3.   

    谢谢各位,我要的是用ResultSet分页,不是利用oralce分页函数