何よりもまず、一貫性を保つことです。
私はあなたがあなたの質問で概説した慣習であなたがほとんどそこにいると思います。ただし、いくつかのコメント:
ポイント1と2は良いと思います。
ポイント3-悲しいことに、これが常に可能であるとは限りません。単一のテーブルfoo_bar
にどのように対処するかを考えてください foo_id
列があります およびanother_foo_id
どちらもfoo
を参照しています テーブルfoo_id
桁。これに対処する方法を検討することをお勧めします。ただし、これはちょっとしたコーナーケースです!
ポイント4-ポイント3と同様です。複数の参照列を持つことに対応するために、外部キー名の最後に番号を導入することをお勧めします。
ポイント5-私はこれを避けます。それはほとんど提供せず、後日テーブルに列を追加したりテーブルから列を削除したりするときに頭痛の種になります。
その他のポイントは次のとおりです。
インデックスの命名規則
インデックスの命名規則を導入することをお勧めします。これは、実行する可能性のあるデータベースメタデータ作業に非常に役立ちます。たとえば、インデックスをfoo_bar_idx1
と呼びたい場合があります。 またはfoo_idx1
-完全にあなた次第ですが、検討する価値があります。
単数形と複数形の列名
テーブル名だけでなく、列名でも複数形と単一形の厄介な問題に対処することをお勧めします。このテーマは、大きな議論 を引き起こすことがよくあります。 DBコミュニティで。テーブル名と列の両方に単一の形式を使用します。三。私はそれを言いました。
ここで重要なのはもちろん一貫性です!