mysql 使用ON DUPLICATE KEY update实现插入或更新操作
创建一个表
CREATE TABLE `userinfo` ( `UserID` int(11) NOT NULL, `UserName` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL, PRIMARY KEY (`UserID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
想要实现,没有数据插入新数据,有数据更新数据
首先必须要有个唯一索引,我这里为主键UserID
然后使用ON DUPLICATE KEY update实现想要效果
insert into userinfo (UserID,UserName) VALUES (1,"张三") ON DUPLICATE KEY update UserName="张三"
第一次没有数据,因此会插入一条新数据
insert into userinfo (UserID,UserName) VALUES (1,"李四") ON DUPLICATE KEY update UserName="李四"
第二次因为已经有存在数据,就会将UserName更新为李四
经过测试没有问题,可用