DBMS 中的代理键17 Mar 2025 | 阅读 2 分钟 DBMS 中的代理键(Surrogate Key)是用于唯一标识其各自字段中的对象或实体的键,或者可以称为唯一标识符。它是数据库中的唯一标识符。 在本节中,我们将学习代理键,并通过示例了解其实现。 什么是代理键代理键是一个虚拟的或没有实际原因的键,它用于表示数据分析的存在。因此,代理键用于表示数据分析的存在。它是数据库中的唯一标识符。它将外部实体表示为数据库对象,但对用户和应用程序不可见。代理键也称为各种其他名称,例如伪键、技术键、合成键、任意唯一标识符、实体标识符和数据库序列号。 代理键和主键的区别这两个键的区别取决于数据库的类型,即它是当前数据库还是时间数据库。这是因为当前数据库仅存储当前有效的数据,并且数据库中的主键与模型化或外部世界中的代理键之间存在一对一的关系。因此,在当前数据库的情况下,代理键可以作为主键,仅相对于代理键而言。在时间数据库的情况下,代理键和主键之间存在多对多关系。因此,数据库中的多个对象可以对应于一个代理键。这就是为什么我们不能将代理键用作时间数据库的主键,并且需要与代理键一起使用另一个属性来唯一标识数据库中的每个对象。 实现代理键让我们通过一个示例来实现,以理解代理键在DBMS中的工作和作用。 考虑一个Tracking_System的示例,其中我们有以下属性 Key: 一个属性,保存每个跟踪 ID 的键。 Track_id: 一个属性,保存项目的跟踪 ID。 Track_item: 一个属性,保存正在跟踪的项目的名称。 Track_loc: 一个属性,保存跟踪项目的位置。 下表代表上述描述的 Tracking_system 表 ![]() 需要注意的点从上表中可以看出,Tracking_System 表的 Key 属性是代理键,因为 Key 列的值对于不同的项目位置和 ID 是不同的。 代理键的其他可能示例是
下一个主题DBMS 中的唯一键 |
我们请求您订阅我们的新闻通讯以获取最新更新。