如果表中插入重复值,则忽略MySQL INSERT IGNORE语句并显示错误
让我们首先创建一个表-
mysql> create table DemoTable ( FirstName varchar(100) );
如官方MySQL文档中,“如果没有IGNORE,重复表中现有UNIQUE索引或PRIMARYKEY值的行将导致重复键错误,并且该语句将中止”。
因此,让我们现在添加一个唯一索引-
mysql> alter table DemoTable add unique index(FirstName); Records: 0 Duplicates: 0 Warnings: 0
使用insert命令在表中插入一些记录。如您所见,由于我们尚未使用INSERTIGNORE,因此在插入重复记录时会看到错误-
mysql> insert into DemoTable values('Chris');
mysql> insert into DemoTable values('Robert');
mysql> insert into DemoTable values('David');
mysql> insert into DemoTable values('Robert');
ERROR 1062 (23000): Duplicate entry 'Robert' for key 'FirstName'
mysql> insert into DemoTable values('Chris');
ERROR 1062 (23000): Duplicate entry 'Chris' for key 'FirstName'
mysql> insert into DemoTable values('Sam');使用select语句显示表中的所有记录-
mysql> select *from DemoTable;
这将产生以下输出-
+-----------+ | FirstName | +-----------+ | Chris | | David | | Robert | | Sam | +-----------+ 4 rows in set (0.00 sec)
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西