DML操作的游标属性
游标:
       在Oracle中作为指针来引用该私有工作区
 隐式游标:
       执行一个SQL DML语句(insert、update、delete)以及返回单行的select into时,PL/SQL都会声明和管理一个隐式游标,这种类型的游标就称为隐式的游标。
隐式游标的属性:
         SQL%FOUND  ------如果记录成功获取,返回true;否则就返回false
                   例:
                          begin
                                  update emp set sal = 3100 where enpno = 7788;
                                   if sql%found then
                                         dbms_output.put_line('记录修改成功');
                                     end if ;
                           end;                                    
         SQL%NOTFOUTD -----如果记录获取失败,返回true;否则就返回false
                    例:
                           begin
                                   delete from emp where sal >= 2000;
                                     if SQL%FOUND then
                                       dbms_output.put_line('被开除的高薪员工有' || SQL%ROWCOUNT ||‘人’);
                                     end if;
                             end;
         SQL%ROWCOUNT-----返回从游标中获取的记录数、
2. DML语句的RETURNING字句
例:
      declare
                 v_name varchar(50);
      begin
                 for col in (select empno, ename from emp) loop;
                       update emp set ename = 'temp' where empno = col.empno
                  retuening ename into v_name;
                  dbms_output.put_line();
                 end loop;
      end;
3. 事物、事物的回滚与提交
1. 原子性
       事物不是一个可以分割的单元
 2. 一致性
       事物必须使系统从一个一致性状态变换到另一个一致性状态
3. 隔离性
       每个事物必须独立与其他事务执行
4.持久性
       确保事物完成后,对数据的修改是永久性的,即使接下来发生系统鼓掌也不会对其有任何影响
  commit(提交) 、 rollback(回滚)
           例:
               declare
               begin
                    update demp set name = ‘a’  where id = 1;
                     commit;
                     update demp set name = ‘b’  where id = 2;
                     rollback;  – 程序执行到这里会清除前面没提交存在内存中的数据;
                     update demp set name = ‘c’  where id = 3;
                      commit;
                end;