1.4. データベースへのアクセス

データベースを作成した後、以下によってアクセスできます。

おそらくこのチュートリアルの例を試すには、psqlから始めることを勧めます。 以下のコマンドを入力することによって、mydbデータベースをアクティブにすることができます。

$ psql mydb

データベース名を省いた場合、データベース名はデフォルトでユーザアカウント名となります。 この仕組みについては前節で既に説明しています。

psqlでは、始めに以下のメッセージが表示されます。

Welcome to psql 7.4.2, the PostgreSQL interactive terminal.
 
Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help on internal slash commands
       \g or terminate with semicolon to execute query
       \q to quit
 
mydb=>

最後の行は以下のようになっているかもしれません。

mydb=#

これは、データベーススーパーユーザであることを示します。 自身でPostgreSQLをインストールした場合に最も良く現れます。 スーパーユーザであることは、アクセス制御の支配を受けないことを意味します。 チュートリアルの段階では、これは重要ではありません。

psqlの起動に問題が発生した場合は、前節に戻って下さい。 psqlの診断とcreatedbの診断方法は似ており、後者が動作すれば前者も同様に動作するはずです。

psqlが最後に出力する行はプロンプトで、psqlが入力を監視していること、psqlが管理する作業領域にSQL問い合わせを入力できることを示しています。 以下のコマンドを試して下さい。

mydb=> SELECT version();
                            version
----------------------------------------------------------------
 PostgreSQL 7.4.2 on i586-pc-linux-gnu, compiled by GCC 2.96
(1 row)

mydb=> SELECT current_date;
    date
------------
 2002-08-31
(1 row)

mydb=> SELECT 2 + 2;
 ?column?
----------
        4
(1 row)

psqlプログラムは、SQLコマンドではない、多くの内部コマンドを持っています。 それらはバックスラッシュ文字"\"から始まります。 これらのうちいくつかはwelcomeメッセージに一覧表示されています。 例えば、各種PostgreSQL SQLコマンドの構文に関するヘルプを以下のようにして得ることができます。

mydb=> \h

psqlを終了するには、以下を入力します。

mydb=> \q

psqlは終了し、コマンドシェルに戻ります。 (他の内部コマンドについてはpsqlのプロンプトにて\?を入力して下さい。) psqlの完全な能力についてはpsqlにて説明されています。 PostgreSQLが正しくインストールされていれば、オペレーティングシステムのシェルプロンプトでman psqlを入力することで、その文書を参照することもできます。 このチュートリアルでは、これらの機能は明示的に使用しませんが、適当と判断したところでこれらを使用することができます。