所以我想获取当前数据库中所有表的列表。我尝试使用以下命令:
SHOW TABLES;
,但仅打印字符串:Show tables handled.
,而仅打印其他字符串。
我尝试过:Display tables of a database in java但查询返回以下错误(是,原因和操作为空):
Error report -
SQL Error: ORA-00942: table or view does not exist
00942. 00000 - "table or view does not exist"
*Cause:
*Action:
这些输出是什么意思?在这种情况下我该怎么办?
答案 0 :(得分:1)
然后是Oracle,
select * from user_tables;
对于所有对象(过程,视图,...-包括表),请参见
select * from user_objects;
这两个结果都包含很多列;选择您感兴趣的人。
答案 1 :(得分:0)
Metadata queries for Oracle是不同的。您正在寻找的可能是这样的:
SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name)
FROM USER_ALL_TABLES u
WHERE u.nested='NO'
AND (u.iot_type is null or u.iot_type='IOT');