指定したデータベースへ接続する

PostgreSQL に接続する時に任意のデータベースに接続する方法、および psql 上で現在接続しているデータベースとは別のデータベースに接続する方法について解説します。

(Last modified: )

psqlのオプションを使って接続するデータベースを指定する

psql を使って PostgreSQL に接続する時、接続するデータベースを指定しなかった場合は接続に使用するロールと同じ名前のデータベースに接続します。

例えば次のようにロールとして postgres を使って接続した場合、ロール名と同じ postgres データベースに接続します。

psql -U postgres

psqlのオプションを使って接続するデータベースを指定する(1)

現在接続しているデータベース名はプロンプトに表示されています。

psqlのオプションを使って接続するデータベースを指定する(2)

\cコマンドを使ってデータベースに接続する

psql を使って PostgreSQL に接続したあと、現在接続しているデータベースとは別のデータベースに接続するには、psql のメタコマンドの一つである \c を使用します。

それでは mydb データベースに接続してみます。次のように実行してください。

\c mydb

psqlのオプションを使って接続するデータベースを指定する(1)

mydb データベースに接続しました。プロンプトに表示されているデータベース名も mydb に変わっています。( \c のかわりに \connect を使用することができます)。

現在接続しているデーベース名を取得する

PostgreSQL で用意されている current_database 関数を使用すると現在接続しているデータベース名を取得することができます。

それでは次のように実行してください。

select current_database();

現在接続しているデーベース名を取得する(1)

現在接続しているデータベース名の mydb を取得することができました。

-- --

指定したデータベースに接続する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。