NULLの許可
広告
テーブルを作成する時にカラムに対してNULLを格納する許可を与えるかどうかを指定します。書式は次の通りです。
CREATE TABLE db_name.tbl_name (col_name1 data_type1 NULL, col_name2 data_type2 NOT NULL, ...);
カラムのデータ型の後に「NOT NULL」を指定するとそのカラムにはNULLを格納することができなくなります。逆に「NULL」を指定するとそのカラムにはNULLを格納することができるようになります。どちらも指定しなかった場合のデフォルトは「NULL」です。
では実際に試してみます。次のようなテーブルを作成します。
mysql> create table nulltest(num1 int not null, num2 int null, num3 int);
作成したテーブルのカラム情報を確認します。
3つのカラムの中で「num1」カラムの「Null」列の値が「NO」になっていることが確認できます。
それではテーブルにデータを格納してみます。
mysql> insert into nulltest(num1, num2, num3) values(null, null, null);
上記のように「num1」カラムにはNULLを格納できないためエラーが発生します。では別のデータを格納してみます。
mysql> insert into nulltest(num1, num2, num3) values(8, null, null);
「num2」カラムと「num3」カラムの値はNULLのままですが、NULLを許可していますのでエラーとはならず無事データは追加されました。
( Written by Tatsuo Ikura )