information_schema.schemata
からの情報 接続しているロールによって異なるため、一般的にスキーマを検出するためにクエリを実行するのは実際には適切なビューではありません。
information_schema.schemata
のドキュメント 9.3で
言う:
ただし、その文だけでは(少なくとも私には)はっきりしていません。なぜpublic
が表示されないのですか。 。
メーリングリストの投稿で、TomLaneはもう少し詳しく説明しています。
http://www.postgresql.org/message-id/[email protected]
彼の結論:
これは、この質問の問題とまったく同じように見えます。
結論:pg_namespace
を使用します information_schema.schemata
の代わりに
これは、ユーザーの期待に準拠するようにバージョン9.4で修正されました。 現在のドキュメント 言う:
USAGE
スキーマに対する特権は、このビューから取得するのに十分です。