为了账号安全,请及时绑定邮箱和手机立即绑定

有人可以解释什么是外键,以及为什么使用它吗?

有人可以解释什么是外键,以及为什么使用它吗?

C#
森林海 2022-06-12 11:04:24
我正在学习 C#,我正在学习 SQL 数据库,但我不确定我是否完全理解外键?事先谢谢你
查看完整描述

4 回答

?
紫衣仙女

TA贡献1839条经验 获得超15个赞

外键是另一个表的主键。它用于链接两个表。示例:我们有 2 个表(Person & Employee)

Person 有主键:personID,Employee 有主键:employeeID

员工是一个人,所以他们必须联系起来。

员工有外键:personID

因此,对于每个 Employee 都有一个与之关联的 Person(其中 Employee 中的 personID 与 Person 中的 personID 相同)。


查看完整回答
反对 回复 2022-06-12
?
千万里不及你

TA贡献1784条经验 获得超9个赞

在关系数据库的上下文中,外键是一个表中的一个字段(或字段集合),它唯一地标识另一个表或同一个表的一行。简而言之,外键是在第二个表中定义的,但它指的是第一个表中的主键或唯一键。

//img1.sycdn.imooc.com//62a557e900019a7d04800317.jpg

这将我们带到主键。客户表的每一行都包含一个名为 customerNumber 的唯一键,这是该表的主键。在订单表上,我们有 orderNumber 列,它是该表的主键。


订单表有一个通过客户编号返回到客户表的外键链接。我们称客户编号为外键。


客户表:


customerNumber CustomerName.

       1           Bob

       2           Jane

订单表:


OrderNumber customerNumber   Status

       1           1         Shipped

       2           1         Exploded

使用上面的数据,如果您想查看 bob 有哪些订单,您可以将主键作为 bobs 客户 ID,并检查订单表中包含它的所有行。这是链接两个表的外键。


查看完整回答
反对 回复 2022-06-12
?
月关宝盒

TA贡献1772条经验 获得超5个赞

FOREIGN KEY 是用于将两个表链接在一起的键。

FOREIGN KEY 是一个表中的一个字段(或字段集合),它引用另一个表中的 PRIMARY KEY。

包含外键的表称为子表,包含候选键的表称为引用表或父表。

参考:https ://www.w3schools.com/sql/sql_foreignkey.asp


查看完整回答
反对 回复 2022-06-12
?
慕森卡

TA贡献1806条经验 获得超8个赞

您使用它将两个表链接在一起,它使您的数据完整性更好。您应该始终使用外键来链接表引用,除非您有明确的理由不这样做。

假设您有带列的Foobar表和带UserId列的UserId。您使用外键将表中的列链接UserIdFoobarUserId列。

之后,如果您的行为 1 并尝试从中删除列Foobar值为1 的行,则会收到错误,因为引用了它。还验证了插入,假设您尝试将行插入到表中,但表中不存在该行,您也会收到错误消息。UserIdUserIdFoobarFoobarUserIdUser


查看完整回答
反对 回复 2022-06-12
  • 4 回答
  • 0 关注
  • 292 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号