複数のスキーマを持つ postgres データベースがあります。 シェルから でデータベースに接続してpsql
実行すると、\dt
デフォルトの接続スキーマであるpublicが使用されます。指定できるフラグはありますか、またはスキーマを変更するにはどうすればよいでしょうか。
ベストアンサー1
PostgreSQL では、システムは検索パス (検索するスキーマのリスト) に従って、どのテーブルを意味するかを決定します。
検索パス内の最初に一致するテーブルが目的のテーブルとして扱われます。一致するテーブルがない場合は、データベース内の他のスキーマに一致するテーブル名が存在する場合でも、エラーが発生します。
現在の検索パスを表示するには、次のコマンドを使用します。
SHOW search_path;
新しいスキーマをパスに配置するには、次のようにします。
SET search_path TO myschema;
または、複数のスキーマが必要な場合:
SET search_path TO myschema, public;
参照:https://www.postgresql.org/docs/current/static/ddl-schemas.html