【发布时间】:2014-04-30 10:04:55
【问题描述】:
我在 Oracle 数据库上的 PL-SQL 脚本有问题。这不能正常工作。我听说一种说法是无用的。我不知道是哪一个。
DECLARE
CURSOR emp_cur IS
SELECT ename, deptno, empno
FROM emp
WHERE sal <
2500;
emp_rec emp_cur%ROWTYPE;
BEGIN
FOR emp_rec IN emp_cur
LOOP
give_raise (emp_rec.empno, 10000);
END LOOP;
END;
【问题讨论】:
-
你得到哪个错误?
-
emp_rec emp_cur%ROWTYPE;不需要。因为FOR LOOP需要声明变量DONOT!IN之后的语句决定数据类型(Record/Primitive) -
@OracleUser 谢谢老兄!
-
为什么不直接运行
update emp set sal = sal + 10000 where sal < 2055。 比基于逐行的方法更高效
标签: sql database oracle plsql oracle-sqldeveloper