关于为什么要用游标的一个例子的问题
我数据库开发是新手,最近在看oracle plsqp从入门到精通,。。。。。。代码10.19演示了如何使用游标删除EMP表中员工编号为7369的员工记录
DECLAGE
CURSOR emp_cur (p_empno IN NUMBER)
IS
SELECT *
FROM emp
WHERE empno = p_empno;
FOR UPDATE;
BEGIN
FOR emp_row IN emp_cur LOOP
DELETE FROM emp
WHERE CURRENT OF emp_cur;
END LOOP;
COMMIT;
END;
这个例子为什么这么繁琐,它是仅仅为了演示游标的用法吗,还是有什么优越的地方?与简单的一个单行操作相比。是把一个行通过select放到游标(指针)中,以后就可以更方便地对地对这个指针进行不同的操作吗?但是后面为什么要用LOOP呢,明明就是一行啊,有必要路破么?
------解决方案--------------------就是为了演示而已,初学者语法都不明白,给你一个复杂的例子你就绕到里面去了。
------解决方案--------------------实际肯定是演示 利用游标更新或删除的一种语法WHERE CURRENT OF。。
表示更新删除当前行。
不过这个应该用的比较少,了解即可。