学校、会社などのリストを含むテーブルがあり、ユーザーはどこで働くかを選択できます。誰かが入力した職場のレコードが存在しない場合は、テーブルに追加されます。しかし、紛らわしい名前がいくつかあります。たとえば、7 月 4 日という名前の学校を想像してみてください。「7 月 4 日」と入力すると、他の誰かが「7 月 4 日」と入力します。このような名前の同義語を入力して、2 つまたは 3 つの異なるレコード (異なる ID) を持つ職場がないようにする必要があります。
私は2つの異なるアイデアを思いつきました:
シノニムが同じgid(グループID)を持つ単一のテーブルを持つ
ID Name Gid IsDefaultDictation 1 Google 1 1 2 4th of July 2 1 3 Forth of July 2 0
次のようなsysnonymsという名前の別のテーブルがあります。
表1:
ID Name
-------------------------
1 Google
2 4th of July
表 2:
ID Name SynonymForID
------------------------------------------
3 Forth of July 2
どちらがより適切ですか?