私は次のような状況があります。
- クライアント(ID)
- 契約(ID、クライアントID)
- ClientEmployee(ID、ClientIdの)この関係をリレーショナルデータベースでモデル化する方法は?
クライアントは、多くの契約を持つことができ、クライアントは多くを持つことができますがClientEmployees。
契約の場合は、それに取り組むClientEmployeesを関連付ける必要があります。
私のソリューションは、現時点では簡単なものです。ここでは、契約とClientEmployeesの間に多対多の の関係を構築しています。
- ContractClientEmployee(ID、のContractID、ClientEmployeeID)
この設計では、エラーとなり、他のクライアントの契約に関連するClientEmployeeを防止する(データベース設計レベルで)方法がないのコース。
私はスキーマにこのさらなる制約をキャプチャする「ベター」ソリューション、存在しなければならないことを感じるが、私はどのように... :-(
UPDATE把握することはできません:私は有効で、非常に良い2を受け私がレンゾのものを受け入れたのは、それが最初に来たからです...申し訳ありませんが、本当にありがとうございました。
[無関係なテーブル間の整合性を保証する方法](https://stackoverflow.com/questions/43413488/how-do-i-ensure-integrity-between-nrelated-tables/43416765#43416765)への私の答えを参照してください。 – reaanb
うわー...それは複雑に見えます! :-)私はそれをよく読む時間が必要です...現時点では、ありがとう!私が思うことを教えてくれる! – Andrea