如何列出PostgreSQL中所有表的所有約束條件?
我需要搜索很久以前創建的unique約束,資料庫有這么多(600)個表。這很難找到。有沒有什么查詢可以列出所有表的所有約束
uj5u.com熱心網友回復:
你必須參考pg_constraint.
。如果你只需要列出contype的唯一約束過濾器,像這樣:
select * from pg_catalog.pg_constraint PC
where contype = 'u'/span>
這里的檔案。https://www.postgresql.org/docs/current/catalog-pg-constraint.html
uj5u.com熱心網友回復:
下面的查詢將列出PostgreSQL資料庫中一個表的所有約束。 你可以試試下面的方法:-
SELECT con.*
FROM pg_catalog.pg_constraint con
INNER JOIN pg_catalog.pg_class rel ON rel.oid = Con.conrelid
INNER JOIN pg_catalog.pg_namespace nsp ON nsp.oid = Connamespace
WHERE nsp.nspname = '<schema name>'
AND rel.relname = '<table name>'。
用你的表的名稱&和你的模式的名稱替換。
它可以在PSQL中使用以下方式查看:-
d </span>SCHEMA_NAME.TABLE_NAME>
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/324738.html
標籤:
