【卒論メモ2】MySQLのenum型について

■Field(カラム)のTypeが「enum〜〜」となっているものについて.

(enum型は文字列型である)

MySQLのテーブルを参照する

 ●desc (テーブル名);

例えば,enum('0','1')となっているものがあるとき,このカラムには0か1の値しか入らない.

(但し,NULL値は例外)

このカラムに値を代入する

 ●insert into テーブル名(カラム名) values('0');

こうすると,このカラムには「0」が代入される.

ここで,enum型にリストされた文字列定数には順にインデックスが割り当てられる.

(インデックスは1から開始されます)

インデックスをりよすいて値を代入する

 ●insert into テーブル名(カラム名) values(1);

こうすると,このカラムには「0」が代入される.

つまり,'0'=インデックス1,'1'=インデックス2ということになっている.

シングルクォーテーションの有無によって,文字列なのかインデックスなのかが決まる.

ちなみに,NULL値の場合はインデックスもNULLとなる.