加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle PL/SQL光标的引入

发布时间:2020-12-12 14:35:20 所属栏目:百科 来源:网络整理
导读:一 定义 光标,也叫游标,就是一个结果集(Result Set)。 二 语法 CURSOR 光标名 [(参数名 数据类型[,参数名 数据类型]...)] IS SELECT 语句; 三 光标用法 1、定义光标 cursor c1 is select ename from emp; 2、打开光标执行查询 open c1; 3、取一行到变量

一 定义

光标,也叫游标,就是一个结果集(Result Set)。 二 语法 CURSOR 光标名 [(参数名 数据类型[,参数名 数据类型]...)] IS SELECT 语句; 三 光标用法 1、定义光标 cursor c1 is select ename from emp; 2、打开光标执行查询 open c1; 3、取一行到变量 fetch c1 into pename;

4、关闭关闭释放资源 close c1; 四 实例 1、需求 使用光标查询员工姓名和工资,并打印。 2、代码
  1. --查询并打印员工的姓名和薪水
  2. /*
  3. 1.光标属性
  4. %found %notfound
  5. */
  6. set serveroutput on
  7. declare
  8. --定义一个光标
  9. cursor cemp isselect ename,sal from emp;
  10. --为光标定义对应的变量
  11. pename emp.ename%type;
  12. psal emp.sal%type;
  13. begin
  14. --打开光标
  15. open cemp;
  16. loop
  17. --取一条记录
  18. fetch cemp into pename,psal;
  19. --思考:1循环什么时候退出?2fetch不一定能取到记录
  20. --exitwhen没有取到记录
  21. exitwhen cemp%notfound;
  22. dbms_output.put_line(pename||'的薪水是'||psal);
  23. end loop;
  24. --关闭光标
  25. close cemp;
  26. end;
  27. /
3、运行结果 SMITH的薪水是800 ALLEN的薪水是1600 WARD的薪水是1250 JONES的薪水是2975 MARTIN的薪水是1250 BLAKE的薪水是2850 CLARK的薪水是2450 SCOTT的薪水是3000 KING的薪水是5000 TURNER的薪水是1500 ADAMS的薪水是1100 JAMES的薪水是950 FORD的薪水是3000 MILLER的薪水是1300 PL/SQL 过程已成功完成。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读