显示Oracle AQ SYS.AQ $ _JMS_TEXT_MESSAGE的内容

Bru*_*ert 13 oracle jms advanced-queuing

我有一个使用JMS op Oracle Oracle高级排队的应用程序.我想对队列表进行查询,该查询显示消息的内容(在我的例子中是XML).因此,当我从[queue_table]中选择'select user_data'时,我得到'AQ SYS.AQ $ _JMS_TEXT_MESSAGE'作为回复.

是否有一个功能,以便显示此消息的内容?像[queue_table]'中的'select FUNCTION(user_data)'之类的东西?

我用Google搜索,扫描了许多关于排队的Oracle文章,但我找不到这个东西.我怀疑有一种简单的方法可以做到这一点,但我找不到它.

Rob*_*ijk 13

我也在努力解决这个问题.我在这里写了一个答案:http://rwijk.blogspot.com/2009/02/whats-in-my-jms-queue.html.

问候,Rob.

  • “从[queue_table]队列中选择queue.user_data.text_vc”在此处添加了答案,因此我可以将答案作为解决问题的方法,因此我希望答案是完整的。 (2认同)

Bru*_*ert 6

所以我想它应该是:

select queue.user_data.text_vc from [queue_table] queue
Run Code Online (Sandbox Code Playgroud)

  • 确切地。您应该在 user_data.text_vc 前面使用别名或 table_name 本身。否则,它开始查找包含名为 text_vc 的函数的 user_data 包,从而导致错误消息 ORA-00904:“USER_DATA”。“TEXT_VC”:无效标识符 (2认同)