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

hstore拡張機能がすでにインストールされている新しいデータベースを作成するにはどうすればよいですか?

    短編小説:

    template1データベースにhstoreをインストールします:

    psql -d template1 -c 'create extension hstore;'
    

    ステップバイステップの説明:

    PostgreSQLのドキュメントに記載されているとおり:

    CREATE EXTENSIONは、新しい拡張機能を現在のデータベースにロードします。

    拡張機能のインストールはデータベース固有です。以下は、現在のデータベース名を返します。

    $ psql -c 'select current_database()'
     current_database 
    ------------------
     username
    (1 row)
    

    ユーザー名にちなんで名付けられたデータベースがある場合。 dbtestを使用します :

    $ psql -d dbtest -c 'select current_database()'
     current_database 
    ------------------
     dbtest
    (1 row)
    

    わかりました、わかりました。ここで、hstoreをインストールして新しいデータベースを作成するには、hstoreをtemplate1にインストールする必要があります。 データベース。ドキュメントによると:

    CREATE DATABASEは、実際には既存のデータベースをコピーすることによって機能します。デフォルトでは、template1という名前の標準システムデータベースをコピーします。

    これをやってみましょう:

    $ psql -d template1 -c 'create extension hstore;'
    

    そして、それが機能することを確認します:

    $ createdb dbtest
    $ psql -d dbtest -c '\dx'
                     List of installed extensions
      Name   | Version |   Schema   |                   Description                    
    ---------+---------+------------+--------------------------------------------------
     hstore  | 1.0     | public     | data type for storing sets of (key, value) pairs
     plpgsql | 1.0     | pg_catalog | PL/pgSQL procedural language
    (2 rows)
    

    完了しました!



    1. Oracleのvarchar2列のアクセント付き文字を置き換える方法

    2. repmgrを使用してPostgreSQL12のレプリケーションとフェイルオーバーを自動化する方法–パート2

    3. unixODBCドライバーマネージャーの非システムバージョンでのRStudioの使用

    4. PHPを使用してリモートMySQLサーバーに接続する