oracle12c java 队列_Oracle高级队列 - ORA-38818 - 对已编辑对象的非法引用

这篇博客讲述了在Oracle 12c中遇到的ORA-38818错误,该错误在尝试创建队列表时出现。作者创建了一个名为o_utl_q_log的对象类型及其身体,并尝试使用dbms_aqadm创建队列表,但遇到了对已编辑对象的非法引用问题。博客内容包括错误描述、类型的创建和队列表的创建过程,以及寻求解决此问题的帮助。
摘要由CSDN通过智能技术生成

...

GRANT EXECUTE ON dbms_aq TO sch_utl

/

GRANT EXECUTE ON dbms_aqadm TO sch_utl

/

GRANT aq_administrator_role TO sch_utl

/

BEGIN

DBMS_AQADM.GRANT_SYSTEM_PRIVILEGE(privilege => 'MANAGE_ANY'

,grantee => 'sch_utl'

,admin_option => FALSE);

END;

/

1.

create or replace type o_utl_q_log as object

(/*some variables*/

constructor function o_utl_q_log return self as result,

member procedure queue_enqueue,

static function queue_dequeue(p_wait number default 0)

return o_utl_q_log,

);

2.

create or replace type body o_utl_q_log

(

...

);

类型和其的身体没有错误编译,当发生的问题;

3.

begin

dbms_aqadm.create_queue_table(queue_table => 't_utl_q_log'

, queue_payload_type => 'o_utl_q_log'

, sort_list => 'PRIORITY,ENQ_TIME'

, storage_clause => 'tablespace TS_UTL_Q_TABLE_LOG'

, comment => 'Log queue table') ;

end;

我得到这个犯错的说明;

ORA-38818:非法参照editioned对象SCH_UTL.O_UTL_Q_LOG

ORA-06512:在 “SYS.DBMS_AQADM”,线81

ORA-06512:在第2行

38818. 00000 - “非法参照editioned对象%s。%s“

*原因:试图违反规则”未编制对象

可能不依赖于已编辑的对象。“

为了以防万一,我正在使用XE 11g R2。

非常感谢任何人的帮助!

2016-10-10

RafalK

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值