今回はテーブル設計について解説します。
テーブルの操作
- CREATE TABLE ← テーブルの作成
- DROP TABLE ← テーブルの削除
- ALTER TABLE ← テーブルの変更
情報スキーマ
情報スキーマにはデータベースクラスタに関する情報が格納されています。
スキーマのことを「名前空間」と呼ぶこともあります。
システムカタログ
システムカタログにはデータベース管理に関する情報が格納されています。
各種制約
テーブルを作成するに当たり、以下のように各種制約を設定することができます。
- 主キー(プライマリーキー)制約
- ユニーク制約
- NOT NULL 制約
- 外部キー制約
- チェック制約
主キー制約
主キー制約とは特定のカラムに「重複する値」や「NULL値」を格納できないようにする制約を言います。
一意の値を設定したい場合に使用します。
そのため、重複する値や NULL 値は設定できません。
更に自動的にインデックスが作成されます。
主キー制約は「CREATE TABLE」や「ALTER TABLE」で設定します。
拡張表示を「on」にします。
※拡張表示(Expanded display)を「on」にすると横長ではなく縦長で表示できます。
postgres=# \x |
現在のデータベースを確認します。
「testdb」を利用します。
postgres=# \l |
testdb にアクセスします。
postgres=# \c testdb |
主キー制約を設定したテーブル(testtable01)を作成します。
testdb=# CREATE TABLE testtable01( |
テーブル構造を確認します。
testdb=# \d testtable01 |
自動的にインデックスが作成されていることが分かります。
主キーの追加(ALTER TABLE)
ALTER TABLE で主キーを追加することができます。
ALTER TABLE testtable02 ADD PRIMARY KEY(カラム名); |
PostgreSQL シリーズ
今まで学習した PostgreSQL の技術をシリーズとしてまとめました。
【PostgreSQL】PostgreSQL の特徴と基本【Part.1】
【PostgreSQL】【正規化】リレーショナルデータベース(RDMS)の基本【Part.2】
【PostgreSQL】PostgreSQL のインストールと初期設定【Part.3】
【PostgreSQL】PostgreSQL の標準付属ツールの説明とコマンド手順【Part.4】
【PostgreSQL】PostgreSQL の設定ファイル(postgresql.conf、pg_hba.conf)の解説【Part.5】
【PostgreSQL】PostgreSQL のバックアップ手順とリストア手順【Part.6】
【PostgreSQL】PostgreSQL の運用管理(ユーザー管理、バキューム)【Part.7】
【PostgreSQL】PostgreSQL の基本的な SQL文 とオブジェクトについて【Part.8】
【PostgreSQL】PostgreSQL の組み込み関数、ユーザー定義関数、演算子について【Part.9】
【PostgreSQL】PostgreSQL のトランザクションについて【Part.10】
【PostgreSQL】SQL文【Part.11】
【PostgreSQL】テーブル設計(データ型、制約)【Part.12】
コメント