oracle 当前owner,如何在Oracle中找到对象的OWNER?

您可以查询ALL_OBJECTS视图:

select owner

, object_name

, object_type

from ALL_OBJECTS

where object_name = 'FOO'

寻找同义词:

select *

from ALL_SYNONYMS

where synonym_name = 'FOO'

只是为了澄清,如果用户用户的SQL语句引用了没有模式限定的对象名称(例如“FOO”),则Oracle FIRST会检查用户的模式以查找该名称的对象(包括该用户模式中的同义词).如果Oracle无法从用户的架构中解析引用,那么Oracle会检查一个公共的同义词.

如果您正在专门针对特定table_name的约束:

select c.*

from all_constraints c

where c.table_name = 'FOO'

union all

select cs.*

from all_constraints cs

join all_synonyms s

on (s.table_name = cs.table_name

and s.table_owner = cs.owner

and s.synonym_name = 'FOO'

)

HTH

– 附录:

如果您的用户被授予访问DBA_视图(例如,如果您的用户被授予SELECT_CATALOG_ROLE),则可以在前面的SQL示例中替换“DBA_”代替“ALL_”. ALL_x视图只显示您已被授予权限的对象. DBA_x视图将显示所有数据库对象,无论您是否拥有权限.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值