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

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

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

$ psql mydb

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

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

Welcome to psql 7.3.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.3devel 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の完全な能力についてはPostgreSQL 7.3 リファレンスマニュアルにて説明されています。PostgreSQL が正しくインストールされていれば、オペレーティングシステムのシェルプロンプトで man psql を入力することで、その文書を参照することもできます。このチュートリアルでは、これらの機能は明示的に使用しませんが、適当と判断したところでこれらを使用することができます。