asp.net – 引用相同主键的两个外键

前端之家收集整理的这篇文章主要介绍了asp.net – 引用相同主键的两个外键前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在一个表中有两个外键可以引用其他表的一个主键吗?

EmployeeID是employee表中的主键,并在时间表中显示为外键两次。

管理员用户将很少填写其他员工的时间表。

在“表格表格”表格栏中,“TimsheetFor”将具有该项目工作人员的员工ID,“EnteredBy”或“FilledBy”字段的employeeID将填写该时间表。

以下哪个选项是正确的?

注意:表只显示与这个问题相关的那些字段。

解决方法

我将使用选项1.在两个外键列引用同一个主键列在不同的表中是非常好的,因为每个外键值将引用相关表中的不同记录。

我确信选项2可以工作,但是您将在TIMESHEET_TABLE和TIMESHEET_FILLED_BY之间基本上具有1对1的关系,从而使两个表不必要,更难维护。

实际上,如果需要成对使用ENTERED_BY和TIMESHEET_FOR,则使用选项1更有意义,因为这是由数据库和外键自动执行的。

猜你在找的asp.Net相关文章