私はデータベースを設計しており、私のテーブルは次のとおりです
- 会社は多くの部門を持つことができ、部門は 1 つの会社に属します。
- 会社は多くの従業員を持つことができ、従業員は 1 つの会社に属します。
- 部門には多くの従業員を含めることができ、従業員は 1 つの部門に属します。
会社( ID、 名前、 ) デパートメント( ID、 題名、 CompanyID (FK_Department_Company) UNIQUE(役職,企業ID) ) 従業員( ID、 Fname、 LName、 CompanyID、(FK_Employee_Company) DepartmentID (FK_Employee_Department) )
したがって、間違ったデータを Employee テーブルに挿入する可能性があることがわかりました
ここにサンプル値があります
company (
25,Spar Pvt LTD, Sweden, 12345678.
26,Mr.Wheel Pvt Ltd, Germany, 123456789)
Department(
101, Manager,25
102, Front Desk,25
103, Host,26)
Employee( 81,25,103,....)
ここで DepartmentID 103 は CompanyID 26 に属していますが、それでも挿入できます. この問題を解決する方法はありますか (sqlserver), または設計を変更する必要があります. 提案やアイデアを教えてください.
よろしく、