如何授予对表“ SHC.ABC”的公共同义词“ SHC.ABC”的“选择”权限

时间:2019-02-15 10:49:53

标签: sql oracle oracle11g oracle12c

我创建了一个名为“ SCH.ABC”的表,并创建了PUBLIC同义词“ SCH.ABC”,现在我想对同义词“ ABC”上的模式“ SCH1”授予“选择”权限。我该怎么办,请帮助解决此问题。

我正在创建与表相同名称的synanym,同时授予权限,我们将不指定对象类型是表还是同义词。 如果给定,则在ABC上将选择授予sch1。那么哪种对象类型将被授予同义词或表?

2 个答案:

答案 0 :(得分:0)

您已经创建了名为abc的公共同义词,并且可以将选择授予特定的模式,例如

grant select on abc to sch1;

,您无需通过连接到sch.abcsys模式来将模式名称限定为system

,或者您可以将所有架构授予为

grant select on abc to public;

,您无需使用模式名称来限定公共同义词abc。使用

select * from abc;

在数据库中的每个架构中。

答案 1 :(得分:0)

非常感谢您有兴趣回答。我刚才发现,在那种情况下,仅同义词会获得授予的优先权。我在我的家庭模式中通过drop同义词测试,并尝试在另一个模式中访问它给出了错误,然后在工作正常后再次创建了同义词。