私は、データベース設計者に挑戦している設計上の問題についての方向性を探しています。私はアーカイブとGoogleを検索しましたが、これは単純な/初心者のタイプの問題であると思われますが、決定的なものは何も得られませんでした。
イベントの場所を格納するテーブルがあります。これは、ロケーションテーブルと呼ばれます。このテーブルでは、LocationCodeが一意である必要があります。このテーブルでは、LocationNameが一意である必要もあります。ただし、現実の世界では、2つの場所が異なる場所に存在していても、同じ名前になる場合があります(たとえば、同じ州の異なる郡に存在する同じ名前の2つの学校)。ある設計者は、郡名のように名前に値を追加することによって名前を強制的に変更する必要があると主張しています(例:ユニオン高校-フランシス郡)。これに対する彼女の理論的根拠は、「統制語彙」を確保することです。別の設計者は、名前は同じであることが許可されるべきであると主張しています。これは現実を反映しており、LocationCodesを使用して一意性を強制/追跡する必要があるためです。
私は2番目のデザイナーの方向に傾いています-名前は異なっていることが許されるべきです。私が考えることができる同等の例は、人々が同じ名前を共有することが多いという事実です(例:JaneDoe)。人々の連絡先情報を格納するテーブルでは、名前を強制的に変更することはなく、社会保障コードが一意性を追跡する役割を果たしているように見えます。
では、この問題に関する一般的なガイドラインや基準はありますか?役立つドキュメントへのリンクは素晴らしいでしょう。前もって感謝します。