primary key 与 unique 约束的区别与作用

一.主键:为了标识数据库记录唯一性,不允许记录重复,且键值不能为空,主键也是一个特殊索引。

二,相同点:Unique keyprimarykey 约束都强调唯一性

三,  不同点:

1.一个表只能有一个PRIMARY KEY,但可以有多个UNIQUE KEY 

2.unique key 约束只针对非主键列,允许有空值。Primary key 约束针对主键列,不允许有空值。

primary key = unique + not null

UNIQUE KEY的用途:主要是用来防止数据插入的时候重复的。

四.例子:防止重复插入数据,如防止name字段插入重复数据。

1.设置unique索引

2.执行sql添加ignore关键字:

String sql="insert ignore into tb_test(id,name,age) values(null,?,?)";

注意:假设表中已经存在重复数据,无法在name字段添加unique索引;

你可能感兴趣的:(mysql数据库)