FreeBSD 8.4 RELEASE - postgreSQL - データベースの作成

 クラウディア
1. ロールの作成
2. データベースの作成
3. クライアントアプリケーション

1. ロールの作成

 PostgreSQL には「ロール」という概念があります。  「ユーザ」という概念とほぼ同等のものと思って間違いありません。(create role SQL コマンドのラッパが createuser コマンドですから)  ロールの作成は postgreSQL を起動した上で pgsql ユーザ (su pgsql) で以下のように行います。

> createuser ユーザ名
Shall the new role be a superuser? (y/n)
Shall the new role be allowed to create databases? (y/n)
Shall the new role be allowed to create more new roles? (y/n)
 1行目:ユーザを登録します。  2行目:スーパーユーザとしての権限を与えるかを設定します。  3行目:データベースを作成する権限を与えるかを設定します。  4行目:新しいロールを作成する権限を与えるかを設定します。  一度登録したロールを削除するには、以下のようにします。

> dropuser ロール名

2. データベースの作成

 データベースを作成するには、createdb コマンドを使います。

> createdb データベース名
 データベース名を省略した場合には、ロール(ユーザ)名と同じデータベース名がデフォルト値になります。データベースは、$PGDATA 以下に作成されます。  データベースを消去するには、dropdb コマンドを使います。

> dropdb データベース名
 dropdb コマンドは、pgsql ユーザか、そのデータベースを作成したロールだけが実行できます。

3. クライアントアプリケーション

 上記までで、データベースの作成は終了です。後は SQL コマンドを御存知であればテーブルの生成、削除、レコードの追加・参照・更新・削除を行えるはずです。  インタラクティブな環境でデータベースを操作するには psql というクライアントアプリケーションを使用します。Oracle を使用したことのある方であれば PostgreSQL における psql とは Oracle における SQL Plus のようなものであると理解してください。

psql データベース名
 で起動します。起動後は、プロンプトが

データベース名=#
 となります。ここで SQL 文をタイプすることによってデータベースを操作できます。  ターミナルによっては psql 上でコマンドヒストリや行編集の機能が使えます。  psql から抜けるときは

データベース名=# ¥q
 もしくは Ctrl-D を入力します。  一連の SQL 文をテキストファイルに書き込んで、一気に操作することもできます。その場合は、

psql -f ファイル名 -d データベース名
 と入力します。