Oracle--ORA-01775: 同义词的循环链

Oracle中的同义词是对象的别名,用于安全、方便和位置透明性。它们可以是public或private,允许对象重命名或转移时应用无需修改。创建同义词需要特定权限,如CREATE SYNONYM,删除则需要DROP SYNONYM权限。公共同义词可供所有用户访问,私有同义词需要显式授权。
摘要由CSDN通过智能技术生成

同义词

Oracle中同义词是任何表、视图、物化视图、序列、存储过程、函数、包、类型、JAVA类对象、用户定义类型,或是其他的同义词的别名。由于其只是一个别名,所以除了在数据字典中的定义不占任何空间。
  同义词常用于安全和方便。例如,它们可以做:
1.伪装对象名称和其所有者。

2.为分布式数据库远程对象提供位置透明性

3.简化数据库用户访问对象SQL语句

4.当行使精细化访问控制时提供类似指定视图的访问限制

你可以创建public和private同义词。public同义词属于PUBLIC组,每个用户都可以访问。private同义词属于对象所有者,只有其显式授权后其他用户才可访问。

同义词的优势体现在如果其底层的对象重命名或者转移,那么只需要重定义该同义词。基于该同义词的应用则无需任何修改。

CREATE SYNONYM 创建同义词

在自己模式下创建私有同义词需要CREATE SYNONYM权限。

在其他用户模式下创建私有同义词需要CREATE ANY SYNONYM权限。

创建公有同义词,需要有CREATE PUBLIC SYNONYM权限。

CREATE SYNONYM sy1 FOR User1;

DROP SYNONYM 删除同义词

删除私有同义词需要有DROP ANY SYNONYM权限。

删除公有同义词需要有DROP PUBLIC SYNONYM权限。

DROP SYNONYM sy1_table;
DROP PUBLIC SYNONYM sy1_table;

用户对同义词的操作权限都是基于对其底层对象有哪些操作权限。
grant connect,resourc

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值