最重要的也是最实用的(oracle运用存储过程嵌套游标来实现分页)

-- 创建一个包含有点变量的存储过程;开始分页查询的技术 

CREATE OR REPLACE PROCEDURE PRO_PAGE_EMP 

   TOP IN INT, 
   BUTTOM IN INT 

IS 
--声明一个游标变量 
CURSOR CUR_PAGE_EMP IS 
        SELECT EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO 
        FROM (SELECT ROWNUM AS NUM ,EMPLOYEE.* FROM EMPLOYEE) WHERE NUM >=TOP AND NUM <=BUTTOM; 

--定义一个自定义变量 用于存放从有游标中取到的值; 
   TYPE PAGE_TYPE IS RECORD 
   ( 
        EMPNO SCOTT.EMPLOYEE.EMPNO%TYPE, 
        ENAME SCOTT.EMPLOYEE.ENAME%TYPE, 
        JOB SCOTT.EMPLOYEE.JOB%TYPE, 
        MGR SCOTT.EMPLOYEE.MGR%TYPE, 
        HIREDATE SCOTT.EMPLOYEE.HIREDATE%TYPE, 
        SAL SCOTT.EMPLOYEE.SAL%TYPE, 
        COMM SCOTT.EMPLOYEE.COMM%TYPE, 
        DEPTNO SCOTT.EMPLOYEE.DEPTNO%TYPE 
   ); 
   PAGE_DEMO_TYPE PAGE_TYPE; 
BEGIN 
      --打开游标 
      OPEN CUR_PAGE_EMP; 
      LOOP 
          FETCH CUR_PAGE_EMP INTO PAGE_DEMO_TYPE; 
          EXIT WHEN CUR_PAGE_EMP%NOTFOUND; 
      END LOOP;     
      CLOSE CUR_PAGE_EMP; 
END; 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值