日期:2014-05-16  浏览次数:20558 次

Oracle游标(一)显式游标

显式游标是用户手动声明和操作的游标

显式游标的使用步骤

1.声明游标





2.打开游标

语法





3.提取游标

语法





4.关闭游标

语法



显示游标完整示例



游标的属性



语法



整体示例:

为员工添加工资:

declare
  hire_date date; --存放员工入职日期
  e_id      number; --存放员工id
  cursor emp_cur is --定义游标
    select id, hire_date from employees;
begin
  open emp_cur; --打开游标
  loop
    fetch emp_cur
      into e_id, hire_date; --将数据逐条存入变量中,并且游标向后移动
    exit when emp_cur%notfound;
    if 100 * (2010 - to_char(hire_date, 'yyyy')) < 1000 then
      update salary
         set salarvalue = salaryvalue +
                          100 * (2010 - to_char(hire_date, 'yyyy'))
       where emplyeeid = e_id;
    else
      update salary
         set salarvalue = salaryvalue + 1000
       where emplyeeid = e_id;
    end if;
   close emp_cur;
  end loop;


显示游标经常和循环一起使用,简化的遍历方法如下:


示例