检查MySQL条目是否存在,如果存在,如何覆盖其他列?

为此,请使用INSERT ON DUPLICATE KEY UPDATE命令。让我们首先创建一个表-

create table DemoTable1891
   (
   FirstName varchar(20),
   UNIQUE KEY(FirstName)
   );

使用插入命令在表中插入一些记录-

insert into DemoTable1891 values('Chris') on duplicate key update  FirstName='Robert';
insert into DemoTable1891 values('David') on duplicate key update  FirstName='Robert';
insert into DemoTable1891 values('Chris') on duplicate key update  FirstName='Robert';

使用select语句显示表中的所有记录-

select * from DemoTable1891;

这将产生以下输出-

+-----------+
| FirstName |
+-----------+
| David     |
| Robert    |
+-----------+
2 rows in set (0.00 sec)