テーブル作成時にNOT NULL制約を設定する方法は
複数あります!
この記事では一番シンプルだと思う方法を
記載します!
NOT NULL制約とは
制約の1つです。
データベースにおける「制約」とは「入力チェック」のことです。
NOT NULL制約を設定することで、NULLの登録を防止できます。
NOT NULL制約を設定する
CREATE TABLEの中で、主キーとしたい列の右側に「NOT NULL」と記載します。
CREATE TABLE employee(
id CHAR(5) ,
name VARCHAR(12) NOT NULL,
sex CHAR(2),
section VARCHAR(12)
)
NOT NULL制約が設定されたことを確認する
NOT NULL制約を設定した列「NAME」に値に「NULL」を設定するINSERT文の実行を試みると、
異常終了します。
--実行するSQL ※列「NAME」が未設定(=NULL)
INSERT employee (id, name, sex, section) VALUES ('00001', NULL, '男', '営業課')
●エラーメッセージ
テーブル ‘sampleDB.dbo.EMPLOYEE’ の列 ‘NAME’ に値 NULL を挿入できません。この列では NULL 値が許可されていません。
INSERT は失敗します。
テーブルを確認してみると、何も登録されていることが分かります。
SELECT * FROM employee
設定したい列の右側に「NOT NULL」と記載する方法が、
一番シンプルで良いと思います!