これを行うための最良の方法とその理由は何ですか?
ここに私のデータベース設計の一部を簡単に示します。このデータを整理する最良の方法を探しています。
"Leads" has many "Students", Leads has many "Contacts"
"Students" belongs to "Leads" and belongs to "People"
id, person_id, lead_id
"Contacts" belongs to "Leads" and belongs to "People"
id, person_id, lead_id
どの連絡先が「支払人」になるか、また連絡先が主要な連絡先になるかどうかを示したいと考えています。
最初は、次のようなテーブルをさらに 2 つ追加すると思っていました。
"PrimaryContacts" belongs to "Contacts"
id, contact_id
"Payer" belongs to "Contacts"
id, contact_id
次に、このような最初の Contacts テーブルで簡単に表現できるものを使用して、さらに 2 つのテーブルを追加するのは、やり過ぎのように思えることに気付きました。
"Contacts"
id, person_id, lead_id, type, payer
次に、type を 1 または 2 にして、プライマリまたはセカンダリを意味し、payer フィールドを 1 または 2 にして、支払っているか支払っていないかを意味します。
いずれかの方法でそれを行う利点はありますか、それともまったく問題ではありませんか?
ありがとう!