如何防止MySQL重复插入(重复输入)?

为防止重复输入,请添加约束UNIQUE。让我们首先创建一个表-

mysql> create table DemoTable
(
   Id int,
   Name varchar(100)
);

这是防止使用UNIQUE进行MySQL双重插入的查询-

mysql> alter table DemoTable add constraint id_NameUnKey UNIQUE(Id,Name);
Records: 0 Duplicates: 0 Warnings: 0

使用insert命令在表中插入记录。当我们再次尝试相同的记录时,将显示“重复条目”错误-

mysql> insert into DemoTable values(11,'John');
mysql> insert into DemoTable values(12,'John');
mysql> insert into DemoTable values(11,'John');
ERROR 1062 (23000): Duplicate entry '11-John' for key 'id_NameUnKey'

使用选择命令显示表中的记录-

mysql> select *from DemoTable;

这将产生以下输出-

+------+------+
| Id   | Name |
+------+------+
| 11   | John |
| 12   | John |
+------+------+
2 rows in set (0.00 sec)