oracle数据库——游标 隐式游标 显式游标 带参数的游标 带锁的游标 动态游标 强类型

游标

逐行提取查询结果,所以返回结果可以超过一行
%NOTFOUND --如果FETCH语句失败,则该属性为"TRUE",否则为"FALSE";
%FOUND --如果FETCH语句成功,则该属性为"TRUE",否则为"FALSE";
%ROWCOUNT --返回游标当前行的行数;

1.隐式游标

--查看修改数据后会影响到多少行数据
begin
  update emp set sal=sal+100 where deptno=&deptno;
  dbms_output.put_line(sql%rowcount||'个员工工资涨了100元');
  end;
--查看修改数据后是否执行成功
begin
  update emp set sal=sal-100 where deptno=&deptno;
  if sql%found then
  dbms_output.put_line('降薪成功');
  else 
   dbms_output.put_line('降薪失败'); 
   end if;
  end;

2.显式游标

静态:在定义游标的时候就已经确定了它要执行的sql语句
语法:CURSOR <游标名> IS