我尝试通过数据库链接执行DESCRIBE
命令,但这是返回消息:
DESCRIBE <table>@<database>;
ERROR:
------------------------------------
ERROR: object <table> does not exist
1 rows selected
此表上的SELECT
效果很好。
Oracle是否通过数据库链接允许DESCRIBE
?
我正在使用Oracle SQL Developer 1.5.1。
编辑:
是否有其他选项来描述表格?
提前致谢!
答案 0 :(得分:13)
您可以使用all_tab_columns表执行某些操作来获取一些表信息。
select column_name, data_type from all_tab_columns where table_name = 'TABLE_NAME';
答案 1 :(得分:3)
我认为DESCRIBE是一个SQL * Plus功能。请参阅here。
答案 2 :(得分:2)
如果您在DBLink上为该表选择all_tab_columns中的元数据,它将提供该表的说明。 对于Ex:
从all_tab_Columns @ dblink中选择*,其中table_name =&#39; ASDF&#39;和所有者=&#39; XYZ&#39;;
答案 3 :(得分:1)
您似乎正在使用PL/SQL Developer
。
DESCRIBE
不是SQL命令,它是一个查询工具别名,可以转换为对系统表的一系列查询。
PL/SQL Developer
无法描述远程数据库中的表,而本机SQL*Plus
可以。
答案 4 :(得分:1)
在远程服务器上获取表描述的最简单方法是:
CREATE OR REPLACE VIEW TMP_VIEW AS SELECT * FROM TABLE_A@SERVER
/
DESCRIBE TMP_VIEW
/
答案 5 :(得分:0)
我现在无法检查它,但是可能从v $ tables中选择* * remotedb没有给出类似的信息吗?
答案 6 :(得分:0)
在PL / SQL Developer中,您可以右键单击tables文件夹中的表名,然后单击describe ...,它与native SQL plus中的describe命令的结果相同。
答案 7 :(得分:-1)
使用Oracle SQL Developer我能够使用DESCRIBE来显示远程表的定义。但是,我不得不使用符号
描述schema.table@database