0

この議論はここで死ぬまで行われており、私は特にこのスレッドを読むのが好きでした. ただし、特定の質問をしたかっただけで、そのスレッドは現在閉じられているので、ここにあります.

列名について人々の意見がどうなっているのか疑問に思っています。テーブルの主キーを ID の形式で指定するのが一般的なコンセンサスのようです (例: CustomerID)。それが私がすることです。

しかし、他の列はどうですか?CustomerFirstName、CustomerDOB など、すべての列名にテーブル名のプレフィックスを付ける傾向があります。これは私にとって快適ですが、珍しいようです。テーブル名を省略することは、2 つの理由で気になります。第一に、データベースが非常に大きくなると、同じ名前の異なるテーブルに列が存在する可能性が高くなり、特にデバッグ時にそれらを区別するのが難しくなる可能性があることを心配します.通常、主キーはテーブル名で始まりますが、他のものはそうではありません。

最適な命名規則の選択に役立つ規範や原則はありますか? ただし、もう1つ。すべての列名の前にテーブル名を付けるという私の慣例では、問題が発生します - 外部キー列です。StoreID 外部キーを保持するために CustomerStoreID という列を用意しても意味がないので、単に StoreID と呼びます。しかし、それは慣習を破っているので、そもそも慣習が貧弱だったという証拠ですか? 外部キー列にどのように名前を付けますか?

4

1 に答える 1

3

これは完全に個人の判断です。誰もが、識別しやすく、容易に推測できる列の名前を維持しようとします。

そのため、データベースの列の命名規則には標準がありません。各個人は、簡単に追跡および理解できる列の名前を保持します。

私はちょうどを挙げています:-

という名前のテーブルがあるとしましょうEmployee

そして、このテーブルにはinformation、そこに含まれる従業員namecontact詳細を保存する必要があります。

したがって、列にEmp_First_nameEmp_Last_NameEmp_PhoneNoEmp_EmailAdreessという名前を付けるとします。そうすれば、これはより読みやすくなり、将来テーブルを使用する人は、説明なしで列を理解できます。

すべての列名にテーブル名のプレフィックスを付けると、問題が発生します-外部キー列。

私はそうは思わない。任意の列に外部キーがある場合、その列に接頭辞FK_XXXXXを付けるのが一般的な方法です。そのため、誰でもそれが外部キーであることを追跡できます

同様に、 INDEXを作成する場合、通常、 IDX_XXXXというプレフィックスを追加して、これがインデックスの名前であることを示します。

于 2013-08-29T16:55:38.913 に答える