首页 > 其他 > 详细

使用Toad创建存储过程出现错误并解决

时间:2014-12-19 18:52:17      阅读:872      评论:0      收藏:0      [点我收藏+]

存储过程中遇到ora-00942表或视图不存在

CREATE OR REPLACE PROCEDURE p

IS

   CURSOR c

   IS

      SELECT *

        FROM scott.emp

      FOR UPDATE;

 

BEGIN

   FOR v_temp IN c

   LOOP

      IF (v_temp.deptno = 10)

      THEN

         UPDATE scott.emp

            SET sal = sal + 10

          WHERE CURRENT OF c;

      ELSIF (v_temp.deptno = 20)

      THEN

         UPDATE scott.emp

            SET sal = sal + 20

          WHERE CURRENT OF c;

      ELSE

         UPDATE scott.emp

            SET sal = sal + 50

          WHERE CURRENT OF c;

      END IF;

   END LOOP;

 

   COMMIT;

END;

 

 使用toad创建存储过程出现错误:

Warning: compiled but with compilation errors.

打印错误确是:ORA-00942: table or view does not exist

查了下资料才知道

sys.fga_log$ 是记录fga审计记录的基本表。

解决方法:
以sys身份登录,为system赋予select 和delete sys.fga_log$的权限,否则下边的存储过程添加会有问题。
Sql> grant select ,delete on sys.fga_log$ to system;

使用Toad创建存储过程出现错误并解决

原文:http://www.cnblogs.com/xmzzp/p/4174388.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!