概述
本文讲解数据库主键
一个表只能有一个主键(也可以没有),一般情况下,表中都会有主键
主键的作用
用于 标识 一条记录
以emp表为例,如下:
DEPTNO DNAME LOC
------ -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
dname和loc都有可能重复,也就无法唯一标识一条记录,此时就需要 主键 deptno,可以 标识 一条记录
加快查询速度
根据主键进行查询,速度非常快
SELECT * FROM emp WHERE empno='7369'
主键的约束
主键必须满足下面两个条件:
- 不能为空
- 唯一(在同一张表中,主键的值必须唯一,即不能重复)
当执行insert、update操作时,如果主键不满足上面两个约束条件,会报错
主键的特性
必要性
表中可以没有主键,但一般都会设置一个主键,用于 标识 一条记录
无意义性
一般在表中额外 创建一个字段 并设置为 主键,不把某个 业务字段 设置为 主键
在emp表中,deptno字段 没有其他意义,只是主键,只是用于 标识一条记录,在业务上没有任何意义