龙空技术网

MySQL数据库——实体完整性

雾里祈愿 115

前言:

此时小伙伴们对“mysql实体”大概比较关切,咱们都需要学习一些“mysql实体”的相关文章。那么小编同时在网摘上收集了一些关于“mysql实体””的相关内容,希望同学们能喜欢,看官们一起来了解一下吧!

实体完整性

实体(Entity)是一个数据对象,是指客观存在并可以相互区分的事物,如一个教师、一个学生或一个雇员等。一个实体在数据库中表现为表中的一条记录。通常情况下,它必须遵守实体完整性规则。

实体完整性规则(Entity Integrity Rule)是指关系的主属性,即主码(主键)的组成不能为空,也就是关系的主属性不能是空值(NULL)。关系对应于现实世界中的实体集,而现实世界中的实体是可区分的,即说明每个实例具有唯一性标识。在关系模型中,是使用主码(主键)作为唯一性标识的,若假设主码(主键)取空值,则说明这个实体不可标识,即不可区分,这个假设显然不正确,与现实世界应用环境相矛盾,因此不能存在这样的无标识实体,从而在关系模型中引入实体完整性约束。

在MySQL中,实体完整性是通过主键约束和候选键约束来实现的。

1.主键约束

主键可以是表中的某一列,也可以是表中多个列所构成的一个组合;其中,由多个列组合而成的主键也称为复合主键。在MySQL中,主键列必须遵守以下规则。

(1)每一个表只能定义一个主键。

(2)唯一性原则。主键的值,也称键值,必须能够唯一标识表中的每一行记录,且不能为NULL。也就是说一张表中两个不同的行在主键上不能具有相同的值。

(3)最小化规则。复合主键不能包含不必要的多余列。也就是说,当从一个复合主键中删除一列后,如果剩下的列构成的主键仍能满足唯一性原则,那么这个复合主键是不正确的。

(4)一个列名在复合主键的列表中只能出现一次。

在MySQL中,可以在CREATE TABLE或者ALTER TABLE语句中,使用PRIMARY KEY子句来创建主键约束,其实现方式有以下两种。

1)作为列的完整性约束

在表的某个列的属性定义时,加上PRIMARY KEY关键字实现。

了解更多数据库相关知识,可以点击下方链接和小编一起学习哟~

「链接」

标签: #mysql实体