我的任务是查找关系表的名称及其属性的名称,属性的数据类型,NULL / NOT NULL约束以及我的帐户拥有的所有表的列ID。我该怎么做呢? 我试过了,
SELECT * FROM information_schema.SCHEMATA S;
但得到了
ERROR at line 1:
ORA-00942: table or view does not exist
也试过
SELECT table_name,
column_name,
data_type,
data_length "LENGTH",
data_precision "PRECISION",
FROM user_tab_columns WHERE table_name = 'PART'
ORDER BY user_tab_columns.table_name, column_name;
FROM user_tab_columns WHERE table_name = 'PART'
*
ERROR at line 6:
ORA-00936: missing expression
任何人都可以告诉我该怎么办?
答案 0 :(得分:0)
请尝试
SELECT *
FROM information_schema.columns
答案 1 :(得分:0)
你的第二个表述基本上是正确的。您的错误是因为FROM
之前的逗号:
SELECT table_name, column_name, data_type, data_length as "LENGTH",
data_precision as "PRECISION"
------------------------------------^
FROM user_tab_columns
WHERE table_name = 'PART'
ORDER BY table_name, column_name;
INFORMATION_SCHEMA
视图是许多数据库中可用元数据的ANSI标准视图。但是,甲骨文(还没?)支持它们。因此,您需要使用Oracle的元数据视图和表来实现此目的。