前端之家收集整理的这篇文章主要介绍了
asp.net – 引用相同主键的两个外键,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在一个表中有两个外键可以引用其他表的一个主键吗?
EmployeeID是employee表中的主键,并在时间表中显示为外键两次。
管理员用户将很少填写其他员工的时间表。
在“表格表格”表格栏中,“TimsheetFor”将具有该项目工作人员的员工ID,“EnteredBy”或“FilledBy”字段的employeeID将填写该时间表。
以下哪个选项是正确的?
注意:表只显示与这个问题相关的那些字段。
我将使用选项1.在两个外键列引用同一个主键列在不同的表中是非常好的,因为每个外键值将引用相关表中的不同记录。
我确信选项2可以工作,但是您将在TIMESHEET_TABLE和TIMESHEET_FILLED_BY之间基本上具有1对1的关系,从而使两个表不必要,更难维护。
实际上,如果需要成对使用ENTERED_BY和TIMESHEET_FOR,则使用选项1更有意义,因为这是由数据库和外键自动执行的。
原文链接:https://www.f2er.com/aspnet/252352.html