【发布时间】:2013-05-03 17:33:41
【问题描述】:
我正在设计一个数据库,我的表如下
- 一个公司可以有多个部门,一个部门属于一个公司
- 一个公司可以有多个员工,一个员工属于一个公司
- 一个部门可以有很多员工,一个员工属于一个部门
所以我发现有可能插入错误的数据 进入员工表
这里是样本值
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), 或者我必须改变设计,请给我一些建议和想法。
问候,
【问题讨论】:
-
员工表上不需要公司 ID 列。 Departments 表与 Companies 表相关,员工与 Departments 相关,您可以通过这种方式插入正确的数据并获取所需的任何数据。
标签: sql database database-design foreign-key-relationship