主键要保证唯一性
主键是表中的一个列,可以区分表中的各行都是唯一的数据行。尽管普通的列也可以设计为是唯一的,但与这些列不同,只有一个列可以作为主键。这就提供了一个显而易见的选择:在需要明确指定特定行的查询中,可以充分利用主键列。
主键是表中保证各行唯一的一个列,为了确保主键的这种唯一性,MySQL对声明为PRIMARY KEY的列做出了一些限制。可以把这些限制认为是使用主键时必须遵循的原则。主键中的数据不能重复,两个数据行的主键绝对不能有相同的数据,对此绝无例外,给定表中主键总有唯一的值。主键必须有一个值,如果一个主键为空,那么它可能并不唯一,因为其他行的主键也可能为空,一定要将主键设置唯一的值。