数据库管理系统 (DBMS) 在商业、银行、航空公司、电信和大学中是必不可少的,因为它是创建、存储和管理数据库数据的有效且可靠的方法。 关系数据库管理系统 (RDBMS) 是专门为关系数据库构建的 DMBS 的高级形式。
键是关系数据库模式的重要组成部分,因为它们在两个不同的表之间建立链接并唯一标识表中的任何数据行。 但是,密钥比仅仅维护链接具有更具体的重要性。
它有助于从大量行中收集特定数据,如果没有键,这将是复杂的甚至是不可能的。 帮助有效建立和识别关系数据库之间链接的两个主键是主键和外键。
关键精华
- 主键是数据库表中每条记录的唯一标识符,确保没有两行具有相同的主键值。
- 外键是一个表中的一个字段,它引用另一个表的主键,建立两个表之间的关系并保持参照完整性。
- 主键和外键之间的主要区别在于它们在数据库中的功能,主键为记录提供唯一标识符。 相反,外键通过引用其他表中的主键来创建表之间的关系。
主键与外键
主键是唯一的列选择,确定特定表上的行集,也是具有被视为候选键的 ID 的属性。 外键是一个 栏 在用作两个不同表之间的链接的表中,它包含空值。
表不能是关系表 数据库 没有主键的表。 因为主键唯一标识特定的数据行,所以两行或多行不能有相似的主键。 相反,外键用于建立两个不同表的记录之间的关系。
对比表
比较参数 | 首要的关键 | 外键 |
---|---|---|
重复值 | 主键不允许两行具有相同的值。 | 外键允许两行具有相同的值。 |
插入 | 在主键中,即使外键没有该值,也可以插入值。 | 在外键中,如果主键中不存在值,则无法插入值。 |
范围 | 关系数据库表中的每一行只能有一个主键。 | 关系数据库表可以有多个外键。 |
聚集索引 | 默认情况下,主键具有聚集索引。 | 外键没有聚集索引。 |
缺失 | 当要删除一个值时,应该使该值仍然不存在于外键引用表中。 | 当要删除一个值时,可以很容易地从外键中删除。 |
临时表 | 可以在临时表上定义主键。 | 不能在临时表上定义外键。 |
什么是主键?
主键是指特定的列选择,它唯一地确定表中的行集。 主键是具有唯一 ID 的单个属性,也被视为候选键。
主键的值永远不应该波动或改变,因为主键表征了 数据库. 所以改变价值会导致很多混乱。
主键是集群索引的,这意味着所有表行都已排序。 主键主要定义在临时表上。
什么是外键?
外键是指数据库表中提供两个表之间链接的列。 当表1有表2的主键时,这个属性就是外键。
与主键不同,外键可以包含空值,因为它无助于识别关系中的差异,因为主键已经完成了这部分工作。 与主键不同,外键也可以接受重复值,并且在数据库中可以有许多或多个外键,因为外键可以具有不同的属性。
不能在临时表上定义外键。 在向外键列中添加值时,必须确保交易存在于主键中,并且在从外键中删除值时没有约束。
主键和外键的主要区别
- 主键 不允许数据库表中的两行具有重复值。 外键 允许数据库表中的两行具有重复值。
- 在的属性中 主键,即使外键的列中没有该值,也可以将值插入表中。 在里面 外键 属性,如果值不在主键数据库中,则不能在表中插入折扣。
- A 主键 属性在其表中只能有一个范围的主键。 一个 外键 属性在其表中可以有许多外键。
- 主键 有一个聚簇索引,这意味着数据库关系中的所有行都已排序。 外键 没有自动聚集索引,但可以手动完成。
- 下 主键, 通过确保交易不存在于外键引用表中,可以从引用表中删除值。 在外键下,可以毫无故障地删除值,因为该值是否仍然在主键引用表中并不重要。
- 主键 可以在临时表上确定。 外键 不能在临时表上确定或强制执行。
- https://dl.acm.org/doi/abs/10.14778/1920841.1920944?casa_token=HgKaHPnYA9oAAAAA:_NYpWs4jzN-BI4lT9bWA73EPTvOBtYxJzXB7RpKVXGvZRc0htXpsv742IQMGSsjiuA1f_E_80IN18O0
- https://ieeexplore.ieee.org/abstract/document/994756/
最后更新时间:11 年 2023 月 XNUMX 日
Sandeep Bhandari 拥有塔帕尔大学计算机工程学士学位(2006 年)。 他在技术领域拥有 20 年的经验。 他对各种技术领域都有浓厚的兴趣,包括数据库系统、计算机网络和编程。 你可以在他的网站上阅读更多关于他的信息 生物页面.
比较表特别有用。它清晰、简洁地总结了主键和外键的对比特征。
本文缺乏对主键和外键的深入解释。它无法解决涉及这些键的某些高级数据库查询操作。
我看到这篇文章在建立主键通过不允许重复值来确保数据库表中的唯一性方面做得很好。
笔者可以对主外键在各种行业环境中的具体应用进行更广泛的分析。
我不同意。数据库表可以是没有主键的关系数据库表。这被认为是一种不好的做法,但并非不可能。
作者对主键作用的理解很差。他们的价值观不应该改变的事实是完全错误的。它们可能会在必要时进行更新。
本文很好地解释了 DBMS 中主键和外键的重要性。这些是保证数据可靠性的数据库架构中不可或缺的组成部分。
作者很好地强调了主键和外键之间的差异及其在数据库中的重要性。信息非常丰富。
我相信这篇文章很好地简化了主键和外键的概念。它提出了一些富有洞察力的观点。
数据库管理系统是组织的命脉。它们有助于以高效可靠的方式组织和交付关键数据。