加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

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

发布时间:2020-12-16 00:28:20 所属栏目:asp.Net 来源:网络整理
导读:在一个表中有两个外键可以引用其他表的一个主键吗? EmployeeID是employee表中的主键,并在时间表中显示为外键两次。 管理员用户将很少填写其他员工的时间表。 在“表格表格”表格栏中,“TimsheetFor”将具有该项目工作人员的员工ID,“EnteredBy”或“Fill
在一个表中有两个外键可以引用其他表的一个主键吗?

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

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

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

以下哪个选项是正确的?

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

解决方法

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

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读