【发布时间】:2010-09-19 05:38:54
【问题描述】:
我有两个表:Company 和Employees。
我还有一个关系表 Employs,其中包含外键 company_id、employee_id 作为复合主键。注意:员工可以在多家公司工作。
我想要另一个表 EmployeeSchedules,它只包含在公司工作的员工的时间表(company_id:integer,employee_id:integer,start_time:datetime,end_time:datetime)。这最终会显示在某种日历小部件中。
但是,通过这种设计,我必须在应用程序级别验证员工在添加时间表之前确实在公司工作。
我想知道是否有更好的方法可以在数据库级别表示这一点,或者只是坚持在应用程序级别进行验证?例如,如果有办法将 EmployeeSchedules pkey (company_id,employee_id) 与 Employs pkey (company_id,employee_id) 链接起来。欢迎任何其他设计建议!
【问题讨论】:
标签: database calendar schema entity-relationship