sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQLパブリックスキーマが存在するかどうかを確認するにはどうすればよいですか?

    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 スキーマに対する特権は、このビューから取得するのに十分です。



    1. 空間MySQL機能を使用してテキスト比較(機能ベクトル)を高速化する

    2. ロケーションデータを含む大規模なMySQLDB(21MMレコード)-各ロケーションにはlatとlongがあります-「nearby」クエリを実行する必要があります

    3. not in queryに複数の列を使用できますか?

    4. ランダムな単純クエリでのクエリ中にMySQLサーバーへの接続が失われました