データベース 命名規則(個人メモ)
PHPに引き続きDB命名規則も作成しておきます。
とはいっても、自分で作成する知識も経験も無いので参考になりそうな情報を探してみました。
すると、こちらのサイトで纏められていたので丸パクリ使わせてもらう事にします。
テーブル名は、
1. 小文字英数字とアンダースコアだけ使う。大文字は避ける。
2. 一般的な英単語、ローマ字(ヘボン式)でつける。多少長くなってもいい。
3. 頭に何かつける(t_***、m_***、c_***など)。カラム名は、
1. 小文字英数字とアンダースコアだけ使う。大文字は避ける。
2. 一般的な英単語、ローマ字(ヘボン式)でつける。
3. 頭にテーブル名を付ける。ものすごく長くなってもいい。
大文字小文字はDBMS、OS、プログラミング言語によって区別されたりされなかったりするので、無用なトラブルを避けるため。ヘボン式で統一すれば、ツはtuなのかtsuなのか、シはsiなのかshiなのかで迷わなくなる。
テーブル名に t_***、m_***、c_*** などを付けて、テーブル、マスタ、多対多の関連を表すテーブル、ログ的なものなど、意味に応じて目印を付ける。目が慣れれば、テーブル名とテーブル名ではないものが視覚的に違うということもあって、見た目にわかりやすい。名前は短い方がパフォーマンスが上がるのかどうか確かめていないが、長さは気にしない。
上記を元に自分用に纏めたのが以下。
共通
・ 小文字英数字とアンダースコアだけ使う(大文字は原則使用禁止)
・一般的な英単語を使う。日本語使用時はローマ字(ヘボン式)を用いる。
テーブル名
・テーブルに格納するデータの種類毎に接頭語を付ける
マスタ:mst_<categoryname>_<任意>
トランザクション:tr_<categoryname>_<任意>
例えば、釣り用のDBなら「mst_fishing_trout」、株用なら「mst_stock_ipo」など
カラム名
・全てのカラム名の接頭語にテーブル名を付ける
・主キーはテーブル名に”_id”(数値型)もしくは”_code”(テキスト型)の接尾語を付ける
・BOOLEAN型には”is_”の接頭語を付ける
運用して不都合が生じたら都度修正していきたいと思います。
以上