授予在oracle中队列到另一个模式的权限

时间:2016-11-17 14:42:09

标签: oracle plsql oracle-aq

嗨,我在一个架构中有一个oracle队列,即aqs

示例队列

   BEGIN DBMS_AQADM.CREATE_QUEUE(
     Queue_name          => 'AQS.MOb_MSG',
     Queue_table         => 'AQS.MOb_QT',
     Queue_type          =>  0,
     Max_retries         =>  5,
     Retry_delay         =>  0,
     dependency_tracking =>  FALSE,
     comment             => 'SAMPLE');
  END;

我创建了相应的Queue表。它工作正常。

现在我想使用另一个名为“mob”的模式为队列提供选择授权。如何为队列的另一个模式提供授权?我是否需要为队列或队列表提供select访问权限。

我尝试在AQS.MOb_MSG上使用grant select来暴徒,它不起作用!说对象不存在。

1 个答案:

答案 0 :(得分:4)

EXECUTE DBMS_AQADM.grant_queue_privilege ( 
   privilege     =>     'ALL', or (enqueue) or (dequeue)
   queue_name    =>     'AQS.MOb_MSG', 
   grantee       =>     'grantee_user', 
   grant_option  =>      FALSE/TRUE);

如果您希望grant直接访问队列表。你必须这样做。grant select on MOb_QT to xxxx

相关问题