私はデータベースを設計しており、私のテーブルは次のとおりです
- 会社は多くの部門を持つことができ、部門は 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), または設計を変更する必要があります. 提案やアイデアを教えてください.
よろしく、