前提:ひとまずMySQLを対象とします。
・テーブル名は複数形かどうか(userテーブルかusersテーブルか)
・主キーにテーブル名を含めるかどうか(例:usersテーブルの主キーは user_idとすべきか、idとすべきか(railsウェイ?))
・主キーにプレフィックスをつけるかどうか(Oracleウェイ? 例:http://www.shift-the-oracle.com/naming_rule.html)
・カラム名にデータベース名を示すプレフィックスをつけるかどうか(例:http://www.realdealmarketing.net/docs/mysql-coding-standards.php)
・indexの命名について
・頻出文字は短縮すべき? (れ:code ->cd)
など
いろいろ流派があるようですが、普及具合、可読性、開発しやすさ、将来のメンテナンス性などの点からどの規則を採用するべきかについて、お考えを共有していただければと思います。
また、流派に名前がついていればそれもあわせてごご教示いただければ幸いです。
参考)
http://qiita.com/genzouw/items/35022fa96c120e67c637
http://project.svc-service.net/guideline/database.html
http://q.hatena.ne.jp/list?word=%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9+%E5%91%BD%E5%90%8D
あんまり回答がないので調べたり聞いたりしたことメモ
1. テーブル名は複数形がいいっぽい(慣例、railsなど主流フレームワークの規約)
1.1 カラム名にテーブル名を使うときは単数形
2. 主キー「ID」は避ける(SQLアンチパターン:IDリクワイアド)
3. カラム名にテーブル名のプレフィックスをつけるのは避ける(using句使うため)
4. 省略形はやめる(富豪的に)
ほか、カラムの物理名決めるの難しい。
カナはあり得ないのでDDDでいうところのユビキタス言語を英訳するべきだが・・・。
質問文を編集しました。詳細はこちら。