【DB】ちょっとした気遣い 
2008/8/1 金曜日 18:37:15
おなかのお肉が(ry
のびーにょです
こんばんは
前回のエントリーからもつながりますが、またもや保守に関することです
DBを使う場合、いろいろなフラグが出てくると思います。
男性なのか、女性なのか。
会員なのか、非会員なのか。
新規受け付け、入金待ち、キャンセル、取り寄せ中、発送済み、入金済み
等など・・・
その場合、フラグをint型で持たせる人も多いかと思います。
かまわないと思います。
コメント残すのであれば ですけど。
ドキュメントに残してるからいいや とか、ちょっと勘弁してほしいです。
そのドキュメント、いつのドキュメントですか?ってなるんですよ。正直コメントも一緒ですけど。
DBにもコメント残す機能ありますしね。
SHOW FULL COLUMNS FROM テーブル名
で確認できますね、MySQLなら。
追加するなら
ALTER TABLE m_user CHANGE gender gender TINYINT NOT NULL DEFAULT "1" COMMENT '1:male 2:female';
って感じですね。
つか、フラグで分けるなと。
ENUM使ってくださいと。
男女なら
ENUM(’MALE’,'FEMALE’)
会員非会員なら
ENUM(’YES’,'NO’)
新規受け付け、入金待ち、キャンセル、取り寄せ中、発送済み、入金済みなら
ENUM(’SHINKI’,'MACHI’,'CANCEL’,'TORIYOSE’,'END’,'NYUKINN’)
とかとか(最後のはあんまり良くないけど・・・数字よりは断然ましかと)
正直保守する時にソースすべて追いつつフラグの内容判断とか萎えるだけなので辞めてほしいです。