Câu trả lời này là muộn một chút, nhưng nó hiện lên trên một tìm kiếm google tôi đã nghiên cứu vấn đề này. Chúng tôi chỉ cần mô tả Bảng, nhưng phương pháp sẽ giống nhau cho các cột. Các mô tả cột cũng nằm trong bảng pg_description, được tham chiếu bởi objoid.
Thêm quan điểm này:
CREATE OR REPLACE VIEW our_tables AS
SELECT c.oid, n.nspname AS schemaname, c.relname AS tablename, d.description,
pg_get_userbyid(c.relowner) AS tableowner, t.spcname AS "tablespace",
c.relhasindex AS hasindexes, c.relhasrules AS hasrules, c.reltriggers > 0 AS hastriggers
FROM pg_class c
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
LEFT JOIN pg_tablespace t ON t.oid = c.reltablespace
LEFT JOIN pg_description d ON c.oid = d.objoid
WHERE c.relkind = 'r'::"char";
ALTER TABLE our_tables OWNER TO postgres;
GRANT SELECT, UPDATE, INSERT, DELETE, REFERENCES, TRIGGER ON TABLE our_tables TO postgres;
GRANT SELECT ON TABLE our_tables TO public;
Sau đó chạy:
SELECT tablename, description FROM our_tables WHERE schemaname = 'public'
Quan điểm là một phiên bản sửa đổi của pg_tables xem mà thêm trong cột mô tả. Bạn cũng có thể quay xung quanh với định nghĩa khung nhìn để làm cho nó trở thành một truy vấn đơn.
Nguồn
2009-07-23 18:13:09
PostgreSQL không phải là rất thân thiện, nhưng đó là vì mỗi người dùng có thư viện cá nhân (không chuẩn) của bạn ". Bên dưới một hàm ('rel_description') của thư viện của tôi, có thể giúp bạn. –