Sql 如何列出数据库链接(Oracle)中存在的所有表? 基本上我有一个名为MyLink域的数据库链接(Oracle),在这个链接中,我们可以访问基础信息,比如成员名称和其他一般信息。

Sql 如何列出数据库链接(Oracle)中存在的所有表? 基本上我有一个名为MyLink域的数据库链接(Oracle),在这个链接中,我们可以访问基础信息,比如成员名称和其他一般信息。,sql,database,oracle,Sql,Database,Oracle,我想在这个链接中列出所有表的名称,但我不知道怎么做 提前感谢您可以通过数据库链接访问视图: select owner, table_name from all_tables@dblink order by owner, table_name; 选择“所有表”字典视图的内容将列出用户有权访问的所有表。通常情况下,不可能总是获得您没有权限访问的表的列表-它们只是不显示。如果用户具有“选择任何词典”权限,则可以选择DBA_表的内容,它将始终列出数据库中存在的所有表。从所有表中选择表名_tables@

我想在这个链接中列出所有表的名称,但我不知道怎么做

提前感谢

您可以通过数据库链接访问视图:

select owner, table_name
from all_tables@dblink
order by owner, table_name;

选择“所有表”字典视图的内容将列出用户有权访问的所有表。通常情况下,不可能总是获得您没有权限访问的表的列表-它们只是不显示。如果用户具有“选择任何词典”权限,则可以选择DBA_表的内容,它将始终列出数据库中存在的所有表。

从所有表中选择表名_tables@dblinkname;

这将显示链接用户有权访问的所有表


我以前尝试过这段代码,但没有显示链接表。数据库链接:MyLink域中的一个表:这个基础。members@mylink如果我运行一个“选择*基金会”。member@mylink“将获取所有行。当我运行您的select时,该表没有出现。@IgorAbreu,您是否在正确的架构中创建了db链接?请检查创建数据库时提供的用户名和服务名称link@IgorAbreu:用于连接到DBLink中其他实例的用户名是什么?您正在使用架构作为表名的前缀,因此该表似乎不在DbLink用户的架构中。但是如果您有权访问该表,它应该显示在
all\u表中。如果你使用<代码>哪里有所有者=‘基金会’/代码>我的查询?@ AyHORSEXY,No.NoNeN名字,我有一个链接,这个链接被指定为我的生产版本,在我的生产版本A中有一个用户称为基金会,如果我在SQLServer中查看,我可以看到所有表。我不明白为什么我不能使用SELECT来查看这是对现有答案的简化摘录。