steam售卖平台:关于关系数据库中的“主键”和“关系”。

来源:百度文库 编辑:高考问答 时间:2024/05/02 16:04:31
问过别人,说“主键”是为不同表之间建立“关系”而存在的。但是,如果数据库中有多个表所有表中都没有主键且各个表中都存在一个列这个列中所有行中的数据都是此列中唯一的(此列中没有重复的数据),那么不是同样根据这样的列建立各个表之间的联系吗?那设不设主键还有啥区别?

主键存在的很重要,它的作用是强制表的实体完整性。

表的实体完整性是指数据库中的所有行都具有一个非空的主键值,所有表都具有主键,且没有具有重复的主键值的表。这确保数据库中所代表的任何事物都不存在重复的条目。

所以主键不是为不同的表之间建立关系而存在的,外键才是这个功能。

列中所有行中的数据都是此列中唯一的(此列中没有重复的数据)——如果没有设置主键,那么只能说这是巧合或者管理员自己的约定。

我们设置主键就是为了达到一个“硬性”的约束,以免出错。不设当然可以,就没有错误检测,但是要求人工输入的时候要相当准确。

主键为了实现表的实体完整性,
外键是表之间建立关系的引式.