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

Postgresデータベースの複数のスキーマにhstoreをインストールする最良の方法は?

    データベースごとに拡張機能を複数回インストールすることは許可されていません。 CREATE EXTENSIONのマニュアルを引用する :

    拡張機能自体はスキーマ内にあるとは見なされないことに注意してください。拡張機能には、データベース全体で一意である必要がある非修飾名があります。ただし、拡張機能に属するオブジェクトはスキーマ内にある可能性があります。

    publicを含めたくない場合 search_pathで 、「パブリック」拡張機能を専用スキーマにインストールします(例:extensions )。拡張機能ごとに個別のスキーマではなく、すべてに単一のスキーマを使用します。それらのかなりの数があります。CREATE EXTENSION 選択した既存のスキーマにインストールするオプションを提供します:

        CREATE EXTENSION hstore SCHEMA extensions;
    

    また、スキーマがsearch_pathに含まれていることを確認してください それを利用したいと思うかもしれないユーザーの。

    • search_pathは識別子の解決と「現在のスキーマ」にどのように影響しますか

    データストレージは、拡張機能が存在するスキーマの影響をまったく受けません。



    1. MySQLの集計関数-リスト(OracleのLISTAGGなど)

    2. MySQLのforループの例

    3. 数値が浮動小数点か整数かを判断する方法

    4. PostgreSQLの「エラー:各UNIONクエリには同じ数の列が必要」を修正