#本記事について
今後のデータベース設計時の参考になればと思い、データベースの命名規則について、講義内容や現職での体験をまとめたもの。
読みやすくメンテナンスしやすいコードを書くため、開発プロセスを効率良く進めるヒントとなることを目的とする。
##データベースの設計・命名で一番大切なこと
何のために何に使うのか「目的」を持つこと。
そのカラムやテーブルが何をしているか分かる名前にする。
とりあえず使うかもしれない、あったらいいなでカラムを作成することや、とりあえずで命名すると後で集計などを行う際に自分に跳ね返るので注意。
##記号を使用しない。以下の記号は使用不可。
記号 | 名称 | 記号 | 名称 |
---|---|---|---|
! | 感嘆符 | ‘ | シングルコート |
“ | ダブルコート | ()「」{} | 括弧 |
# | 番号記号 | * | アスタリスク |
$ | ドル記号 | , | カンマ |
% | パーセント | :; | コロン,セミコロン |
¥ | 円記号 | / | 斜線 |
@ | 単価記号 | . | ピリオド |
? | 疑問符 | - | ハイフン |
~ | チルダ |
##複数単語からなる場合は,「_」 で区切る。数字(連番)は使用しない。
悪い例では、電話番号と携帯番号など類似した値で複数のカラムが存在するものを定義しようとしている。
しかし、カラム名+数値の命名では値を確認しなければならず、どちらが何を意味しているか判別がつかない。
良い例)customer_name
悪い例)tel01、tel02
##英語と日本語を混在しない
英語と日本語が混在すると作成者しか理解できないケースが発生するため。
悪い例ではkokで顧客の意味を持たせている。
良い例)customer_cd
悪い例)kok_cd
##テーブル名、カラム名に大文字を利用しない
言語により、大文字小文字を区別するもの、しないものがあるため小文字で統一する。
##その他
おすすめしない命名
~flg
例)削除フラグ (delflg)
値を0,1(または1,2)で持つため、削除フラグの場合は1が削除なのか、0が削除なのか、判別がつかない。
削除されたか?(deleted)や、削除された日(delete_date)を推奨。
以上。