【发布时间】:2009-09-07 21:19:27
【问题描述】:
经过与Oracle Advanced Queuing and dbms_aq package的一些斗争 我遇到了另一个问题。我从 Oracle 教程中复制了代码 但是当我编译这段代码时:
create or replace
procedure jms_test(msg varchar2)
is
id pls_integer;
message sys.aq$_jms_stream_message;
enqueue_options dbms_aq.enqueue_options_t;
message_properties dbms_aq.message_properties_t;
begin
message := sys.aq$_jms_stream_message.construct(0);
message.set_string_property('FROM', 'TEST');
id := message.clear_body(-1);
end;
它抱怨:
Error(9,40): PLS-00302: component 'CONSTRUCT' must be declared
Error(10,10): PLS-00302: component 'SET_STRING_PROPERTY' must be declared
Error(11,16): PLS-00302: component 'CLEAR_BODY' must be declared
我认为这段代码在程序体之外有效,因为我尝试成功了 来自What's in my JMS queue的食谱?
我的 Oracle 版本是: Oracle9i 企业版 9.2.0.1.0 版 - 生产
知道什么是错的吗?
【问题讨论】:
标签: oracle plsql jms advanced-queuing