PostgreSQLでデータベース構築

/ Linux/Unix / Comment[0]
環境:Ubuntu9.10

PostgreSQLをインストール
$ sudo apt-get install postgresql

postgresというユーザが作成されたのでパスワードを設定します。
$ sudo passwd postgres

postgresにユーザを切り替え
$ su postgres

PostgreSQLを起動
postgres$ psql
psql (8.4.2)
"help" でヘルプを表示します.

postgres=#

こんな具合に起動します。

roleと呼ばれているPostgresのユーザアカウントを作りましょう。
postgres=# create role 幼女 createdb;
CREATE ROLE

おっと、間違えてしまいました。

roleを削除します。
postgres=# drop role 幼女;
DROP ROLE


代わりに長倉怜というroleを作ります。
postgres=# create role 長倉怜 login;
CREATE ROLE


次にroleにパスワードを設定します。
postgres=# \password 長倉怜
新しいパスワード:
もう一度入力してください:


これでログイン出来るはずなんですが・・・
postgres=# \c postgres 長倉怜

ま、目的はデータベースを実用するわけでは無いのでユーザは作らなくておkですね。

構成
データベース
   ↓
  テーブル
    ↓
   レコード
     ↓
    カラム

まずデータベースを作ります。
postgres=# create database ロリフォルダ;
CREATE DATABASE


おっと間違えた;

postgres=# drop database ロリフォルダ;
DROP DATABASE


postgres=# create database 本棚;
CREATE DATABASE


テーブルを作ります。
postgres=# create table 棚(ID int primary key, タイトル text, コメント text);
NOTICE: CREATE TABLE / PRIMARY KEYはテーブル"棚"に暗黙的なインデックス"棚_pkey"を作成します
CREATE TABLE

棚という名前でテーブルを作り、ID、タイトル、コメントという3つのカラムを作成し、IDにはint(符号付き(倍長)整数型)タイプを定義、さらにプライマリー属性(重複不可能)を付けます。
タイトル、コメントにはtextタイプを定義します。

レコードを作ります
postgres=# insert into 棚 (ID, タイトル, コメント) values (1, '入門vi', 'viの使い方');
ID = 1
タイトル = 入門vi
コメント = viの使い方

というようにそれぞれ挿入されます。

レコードを消すには
postgres=# delete from 棚 where id = '1';
DELETE 1

棚というレコードでIDが8のテーブルを削除する文です。

postgres=# delete from 棚 where タイトル = '入門vi';
他のカラムを指定して削除することも可能です。

データベースを表示させます。
postgres=# select *from 棚;
 id |    タイトル |       コメント
----+-------------------------------+---------------------------------
1 | 入門vi | viの使い方
2 | Inside Linux Software | OSSのからくりとしくみ
3 | PostgreSQL | オープンソースRDBMSシリーズ
4 | ネットワークセキュリティHACKS | プロの使うテクニック&ツール100+
5 | 日経Linux | 日経Linux
6 | 数学ガール | テトラたん萌えぇ
7 | 証言の心理学 | 人間の記憶は脆い
(7 行)


7個しかレコードがないですが、条件をつけて検索をしてみましょう。
postgres=# select タイトル from 棚;
タイトル
-------------------------------
入門vi
Inside Linux Software
PostgreSQL
ネットワークセキュリティHACKS
日経Linux
数学ガール
証言の心理学
(7 行)

タイトルがリストアップされました。

IDからタイトルを検索
postgres=# select タイトル from 棚 where id = 2;
タイトル
-----------------------
Inside Linux Software
(1 行)

Inside Linux Softwareというタイトルの本がヒットしました。

タイトルの曖昧検索
postgres=# select *from 棚 where タイトル ~ 'ガール';
id | タイトル | コメント
----+------------+------------------
6 | 数学ガール | テトラたん萌えぇ
(1 行)


数学ガールがヒットします。
関連記事

コメント

:
:
:
:
:
管理人のみ表示を許可