2017-05-11 72 views
0

我試圖與可能已添加任何評論相處的圖式中的PostgreSQL(9.6)的列表...如何在PostgreSQL中查詢含有註釋的模式列表?

這個偉大的工程,以獲取架構名稱的列表:

select schema_name 
from information_schema.schemata 

...但你如何得到相關的評論(如果有的話)?

  • 我發現了很多東西來獲取數據庫/表/列的評論...架構評論似乎是在逃避我嗎?

任何幫助感激地收到!

回答

2

使用pg_namespace

select nspname as schemaname, 
     obj_description(oid, 'pg_namespace') as comment 
from pg_namespace; 

一個很好的方式來學習之類的語句是與--echo-hidden選項運行psql,然後使用元的一個命令來顯示信息。

如果您運行PSQL \dn+你看:

postgres=> \dn+ 
********* QUERY ********** 
SELECT n.nspname AS "Name", 
    pg_catalog.pg_get_userbyid(n.nspowner) AS "Owner", 
    pg_catalog.array_to_string(n.nspacl, E'\n') AS "Access privileges", 
    pg_catalog.obj_description(n.oid, 'pg_namespace') AS "Description" 
FROM pg_catalog.pg_namespace n 
WHERE n.nspname !~ '^pg_' AND n.nspname <> 'information_schema' 
ORDER BY 1; 
************************** 

          List of schemas 
    Name | Owner | Access privileges |  Description 
-----------+----------+----------------------+------------------------ 
public | postgres | postgres=UC/postgres+| standard public schema 
      |   | =UC/postgres   | 
stuff  | postgres |      | 
tablefunc | postgres | postgres=UC/postgres+| 
+0

這是完美的......和感謝偉大的小費@a_horse_with_no_name! –