如何显示表的架构包括 Oracle 中的约束


describe table_name

没有显示约束,有没有办法做到这一点?

使用DBMS_METADATA包,如此处所述。

您可以使用系统视图。 例如user_*或all_tab_columns和all_cons_columns。尝试如下:

SELECT tc.column_id, tc.table_name, tc.column_name, tc.data_type, cc.constraint_name 
  FROM user_tab_columns tc,
       user_cons_columns cc
WHERE  tc.table_name = cc.table_name(+)
  AND  tc.column_name = cc.column_name(+)
  AND  tc.table_name = 'YOU TABLE NAME THERE'
ORDER BY tc.column_id

您需要查询USER_CONS_COLUMNS视图以查看表列及其约束。

SELECT *
FROM   user_cons_columns
WHERE  table_name = 'TABLE_NAME';

最新更新