それでは実際にDB(で〜たべ〜す)を作ってみましょう。
いつも使っているユーザー(私の場合はshinoda)で作成します。DBの名前も、(仮に)ユーザー名と同じshinodaで作ってみましょう。
DBのcreate手順
1. | まず、shinodaというユーザーでPostgresSQLのコマンド群が使えるように、/usr/local/pgsql/libと/usr/local/pgsql/binにパスが通るようにしないといけません。 ~shinoda/.cshrcを編集します。 「ProgresSQLの起動」のページでpgsqlという管理ユーザーに同じ設定を行っていますので、そちらを参考にして下さい。
* 注意 * |
2. | shinodaというユーザーを、DBをcreate出来るユーザーとして登録します。 (1で行った.cshrcの変更を有効にするため)shinodaでログインし直し、su pgsqlで管理ユーザーになります。 % su pgsql Password: % whoami pgsql % createuser Enter name of user to add ---> shinoda Enter user's postgres ID or RETURN to use unix user ID: 1001 -> Is user "shinoda" allowed to create databases (y/n) y Is user "shinoda" allowed to add users? (y/n) n createuser: shinoda was successfully added % exit <−− exitしてshinodaに戻ります % exit |
3. | では、ユーザー"shinoda"でshinodaというDBを作り、その中にbooksというテーブルを作ってみましょう。
% createdb shinoda <−− shinodaというDBを作ります % psql shinoda <−− DB "shinoda"にログインします Welcome to the POSTGRESQL interactive sql monitor: Please read the file COPYRIGHT for copyright terms of POSTGRESQL type \? for help on slash commands type \q to quit type \g or terminate with semicolon to execute query You are currently connected to the database: shinoda shinoda=> \l datname |datdba|datpath ---------+------+--------- template1| 70|template1 shinoda | 1001|shinoda (2 rows) shinodaというDBがちゃんと作成されています shinoda=> create table books (num int,title text,writer text,imp text); CREATE shinoda=> \d books Table = books +----------------------------------+----------------------------------+-------+ | Field | Type | Length| +----------------------------------+----------------------------------+-------+ | num | int4 | 4 | | title | text | var | | writer | text | var | | imp | text | var | +----------------------------------+----------------------------------+-------+ shinoda=> \q %これで、booksというテーブルが作られました。:-)
|
このpsqlはまだ日本語化していませんので(patchが出回っているのでいずれするつもりですが)、ここで日本語データを入力することは出来ません。
というわけで、ODBCをインストールし、MS-Accessからデータ入力することにします。
elvis等の日本語化されたエディタを使ってデータファイルを作っておき、それをpsqlのcopyコマンドを使ってテーブルに流し込むという技はあります。(実は試してみたらうまくいかなかったので(なんか、一部の日本語が化けました(^^;)、ここでは説明しません。 |