如何显示表的模式包括Oracle中的约束?

时间:2013-10-30 00:32:12

标签: sql oracle

describe table_name

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

3 个答案:

答案 0 :(得分:0)

使用DBMS_METADATA包,explained here

答案 1 :(得分:0)

您可以使用系统视图。例如。 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

答案 2 :(得分:0)

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

SELECT *
FROM   user_cons_columns
WHERE  table_name = 'TABLE_NAME';