作者:永远的爱ye | 来源:互联网 | 2023-05-18 07:59
在写存储过程时,
SQL> create or replace package StuManager.DataSet is
2 type refcursor is ref cursor;
3 end DataSet;
4 /
程序包已创建。
SQL> create or replace procedure GetCollege(
2 rs out StuManager.DataSet.refcursor,
3 len out integer
4 )
5 is
6 begin
7 len := 0;
8 open rs for
9 select College.Cname
10 from College;
11
12 select count(*)
13 into len
14 from College;
15 end GetCollege;
16 /
警告: 创建的过程带有编译错误。
SQL> show error
PROCEDURE GETCOLLEGE 出现错误:
LINE/COL ERROR
-------- -----------------------------------------------------------------
0/0 PL/SQL: Compilation unit analysis terminated
2/23 PLS-00904: 没有足够的权限访问对象 STUMANAGER.DATASET
这个错误该怎样解决啊
2 个解决方案
还能怎么解决,授权呗。
要不就把这个包建立在自己名下。
进行授权。
其实完全没有必要,StuManager.DataSet包只定义一个光标,那就把它定义在GetCollege包中得了罢。