482

私はPostgreSQLの初心者です。

USEMySQLやMSSQLServerのコマンドのように、Postgresのクエリエディタから別のデータベースに接続したい。

インターネットを検索して見つけましたが、 psql\c databasenameでのみ実行されます。PostgreSQLクエリエディタから試してみると、構文エラーが発生します。

pgscriptingでデータベースを変更する必要があります。誰かがそれを行う方法を知っていますか?

4

7 に答える 7

494

接続を取得すると、PostgreSQL常に特定のデータベースに接続されます。別のデータベースにアクセスするには、新しい接続を取得する必要があります。

psqlで使用\cすると、指定されたデータベースや資格情報を使用して、古い接続が閉じられ、新しい接続が取得されます。まったく新しいバックエンドプロセスとすべてを手に入れることができます。

于 2012-04-26T17:25:11.623 に答える
255

接続時に使用するデータベースを指定する必要があります。スクリプトにpsqlを使用する場合は、「\cname_database」を使用できます。

user_name=# CREATE DATABASE testdatabase; 
user_name=# \c testdatabase 

この時点で、次の出力が表示される場合があります

You are now connected to database "testdatabase" as user "user_name".
testdatabase=#

プロンプトがどのように変化するかに注意してください。乾杯、これも探していました。MySQLや私の見解では、postgreSQLに関する情報が少なすぎます。

于 2013-09-09T13:48:44.937 に答える
38

pgAdminでは、次を使用することもできます

search_pathをyour_db_nameに設定します。

于 2017-03-07T15:36:30.253 に答える
13

database私が直面したMySQLからの移行中の基本的な問題は、PostgreSQLでも同じ用語だと思っていたのですが、そうではありません。したがって、データベースをアプリケーションまたはから切り替える場合pgAdmin、期待どおりの結果は得られません。私の場合と同様に、顧客ごとに個別のスキーマ(ここではPostgreSQLの用語を考慮)と個別の管理スキーマがあります。したがって、アプリケーションでは、スキーマを切り替える必要があります。

このために、SET search_pathコマンドを使用できます。これにより、現在のスキーマが現在のセッションに指定されたスキーマ名に切り替わります。

例:

SET search_path = different_schema_name;

これにより、current_schemaがセッションに指定されたスキーマに変更されます。恒久的に変更するには、postgresql.confファイルに変更を加える必要があります。

于 2017-11-23T10:21:27.583 に答える
6

最初に接続するときにこのコンマを使用しますpsql

=# psql <databaseName> <usernamePostgresql>
于 2018-09-04T10:08:08.550 に答える
3

PgAdmin 4、GUIツール:データベース間の切り替え

  1. 左側のPgAdminブラウザで、切り替えたいデータベースを右クリックします。
  2. ドロップダウンメニューからQueryToolを選択します(または必要なその他のオプションについては、今のところQueryToolを使用します)。
  3. PgAdminウィンドウにQueryToolが表示され、その上にアクティブなデータベースとロール名が表示されます。
  4. これで、選択したデータベースに対してクエリを記述できます。
  5. 複数のデータベースに対して複数のQueryToolsを開き、グラフィカルテキストエディタと同じように操作できます。

適切なデータベースにクエリを実行していることを確認するには、次のクエリを発行します。

SELECT session_user, current_database();
于 2021-05-11T15:11:05.187 に答える
2
set search_path = 'schema name here'

postgresに接続している間、接続するにはデフォルトのデータベースを選択する必要があります。何もない場合は、デフォルトとして「postgres」を使用できます。

dbeaverを使用してpostgresに接続できます。UIは良いです

于 2021-09-15T12:03:16.177 に答える