フィールドの詳細な設定

入力を必須にするために例えば「id int, not null,」にできる。これは例えばidとかは入力必須にしたいなんてときに便利。
デフォルト値は「default '例えばmale'」なんてやり方もある。大半数の人が男性の場合とかはデフォルトでmaleに設定されていると便利。
自動連番を使うとidなんかのときにはいちいちユーザーが入リョウクするのは面倒なので自動でやってくれるよっていう設定。これは数字にしか使えない。そこにデータが入ってこなかったら勝手に振っといてよっていう感じ。
索引(インデックス)をつけることも可能。これはフィールドに付けられるものでこれをつけておくと、そのフィールドで検索して時に動作が早くなるという利点がある。ただあまりにもインデックスをたくさん張りすぎていると、データを挿入するときにはインデックスが多すぎると動作が遅くなるというデメリットもあるためバランスよく使うことをオススメする。本当によく検索されるフィールドにだけ使うといい。
主キーはレコードを一位に特定するときに使う。テーブルの中で一つしか指定できない。
キーはいくつでも使える。
ユニークキーはemailなんかにつかう。データが重複してきて入ってきた時にそれをエラーで弾いて欲しいなんて時にはユニークキーを使う。
ちなみに全部反映させるとこんなかんじに出来上がる。


create table users (
id int not null auto_increment primary key,
name varchar(255),
email varchar(255) unique,
password char(32),
score double,
sex enum('male', 'female') default 'male',
memo text,
created datetime,
key score (score)

);