什么是通过远程链接返回视图定义的SQL * PLUS命令?

时间:2015-07-29 19:28:52

标签: sql oracle oracle11g sqlplus

我知道我可以通过执行

来查看当前用户拥有的视图定义
select view_name, text from user_views where view_name like '%VIEW_NAME%';

如何调整该命令以使用DBLINK?我正在尝试以下但它失败了ORA-00942,表或视图不存在。

select view_name, text from user_name.user_views@dblink where view_name like '%VIEW_NAME%';

如何通过DB Link选择视图的视图定义?

1 个答案:

答案 0 :(得分:0)

阅读this blog post后,我想出了以下答案。

来自帖子的语法

SQL> select TEXT
     FROM DBA_VIEWS
     where OWNER = '<owner_name>'
     and VIEW_NAME  = '<view_name>';

要通过DBLINK查看创建语句,您可以通过以下命令搜索all_views;

select view_name, text from all_views@db_link where view_name like '%NAME%';

这将引导您完成架构的所有视图,而不仅仅是用户可以访问的视图。如果我找到一种方法将查询限制为仅用户,我将更新我的答案。