我想在SQL中模拟工厂经理的访问。
我想要强制执行4个约束:
在任何访问中,都有至少一位参与此次访问的经理。
经理可以多次访问同一家工厂,但是在不同的日子里。
经理可以在生日那天参观很多工厂。
最多可以在工厂进行一次访问。
我构建了下一个2表:
visit-Factory(Name Factory, date, during, summary)
\\where Name Factory, date are PK
visit-manager(Name Factory, data, manager)
\\ where Name Factory, date, manager are pk
这最后执行3,但第一个没有强制执行。
有什么想法吗?感谢
答案 0 :(得分:0)
在良好的规范化数据库设计中,您需要确保最少的数据重复。
有鉴于此,请查看您当前的设计,并了解可以删除此类重复的位置。
我不知道您是否已经了解了实体以及如何对它们进行建模,但如果您这样做了,请考虑您需要的不同实体。