星空网 > 软件开发 > 数据库

在PL/SQL中使用游标、动态sql和绑定变量的小例子

需求:查询并输出30号部门的雇员信息

方式一:使用 loop...fetch

 1 SET serveroutput ON; 2 DECLARE 3  CURSOR c_emp IS  4   SELECT * FROM emp WHERE deptno = 30; 5  v_emp emp%rowtype;  6 BEGIN 7  OPEN c_emp; 8   loop 9    fetch c_emp INTO v_emp;10    exit WHEN c_emp%notfound;11    dbms_output.put_line(v_emp.empno||' '||v_emp.ename||' '||v_emp.job||' '||v_emp.mgr||' '||v_emp.hiredate||' '||v_emp.sal||' '||v_emp.comm||' '||v_emp.deptno);12   end loop;13  close c_emp;14 END;15 /

方式二:使用游标 for 循环

 1 SET serveroutput ON; 2 DECLARE 3  CURSOR c_emp IS 4   SELECT * FROM emp WHERE deptno = 30; 5  v_emp emp%rowtype;  6 BEGIN 7  FOR e IN c_emp loop 8   dbms_output.put_line(e.empno||' '||e.ename||' '||e.job||' '||e.mgr||' '||e.hiredate||' '||e.sal||' '||e.comm||' '||e.deptno); 9  end loop;10 END;11 /

方式三:使用动态sql和绑定变量

 1 SET serveroutput ON; 2 DECLARE 3  TYPE emp_cursor IS REF CURSOR; 4  c_emp emp_cursor; 5  v_emp emp%rowtype; 6 BEGIN 7  OPEN c_emp FOR 'select * from emp where deptno =:n' USING 30; 8  loop 9   fetch c_emp INTO v_emp;10    exit WHEN c_emp%notfound;11    dbms_output.put_line(v_emp.empno||' '||v_emp.ename||' '||v_emp.job||' '||v_emp.mgr||' '||v_emp.hiredate||' '||v_emp.sal||' '||v_emp.comm||' '||v_emp.deptno);12  END loop;13  close c_emp;14 END;15 /

 




原标题:在PL/SQL中使用游标、动态sql和绑定变量的小例子

关键词:sql

sql
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

Joom物流:https://www.goluckyvip.com/tag/9957.html
快递国际快递服务:https://www.goluckyvip.com/tag/99571.html
国际航空货运多少钱一公斤:https://www.goluckyvip.com/tag/99572.html
飞时达国际快递价格:https://www.goluckyvip.com/tag/99573.html
国际经济快递服务:https://www.goluckyvip.com/tag/99574.html
国际货运每公斤价格:https://www.goluckyvip.com/tag/99575.html
去日本入住酒店,东西随意用却有一个特殊“要:https://www.vstour.cn/a/411241.html
中国有哪些著名的酒店品牌。:https://www.vstour.cn/a/411242.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流