PostgreSQL:列の作成
●列の作成方法
前項で作ったテーブルに、列を定義していきます。
テーブル person には、
person_id, person_name, person_password
の3つの列がありますが、
説明の都合上、person_id は次項に回して、
ここでは、person_name と person_password を作成します。
[データベース]、[sql_sample]、[スキーマ]、[public]、[テーブル]、[person]、
[列] までたどり着いてください。
では、実際に列を作成してみましょう。
・[列] を右クリック
・新しい列...
・「プロパティ」タブで、
名前:person_name
データ型:text
・「定義」タブで、
NOT NULL:チェックします
# 初期の値の欄には何も書かないでおきます。
# NULL と書いても構わないようですが、
# 'NULL' という文字列と解釈されても困るので、一応。
・[OK]
これで、列 person_name ができました。
同様に、
名前:person_password
データ型:text
NOT NULL:チェックします
で、列 person_password も作成します。
●制約
データベース・テーブルの列には、
いくつかの「制約」を付けることができます。
この項に出てきた「NOT NULL」は、
「データを追加する際、必ず、何らかの値を入れなければならない」
という制約です。
制約を守らない (= この場合は文字列を入れない) と、SQL エラーで失敗します。
実際、
テーブル person の、
ログイン名 (person_name) は、名前を入れてもらわないと、
ログイン時に個人が特定できませんし、
パスワード (person_password) も用意するからには、
何らかの文字入力を強制しないと、セキュリティ的に意味を成しません。
これらの制御は、当然、プログラム側でチェックするわけですが、
データベースレベルで砦を作っておく事で、
たとえプログラムがバグっていても、不正なデータを排除できます。
制約は、他にもあります。
できる限り、用いるようにしましょう。
"C:\Program Files\PostgreSQL\9.2\bin\pgAdmin3.exe"
で起動します。
[PostgreSQL 9.2 (localhost:5432)] を右クリック。
プロパティ、ユーザー名が、sql_sample であることを確認しておきます。
違えば、sql_sample に書き換えてください。