插入数据时 判断是否已经存在
1. ON DUPLICATE KEY UPDATE,通过主键约束来达到校验是否已经存在记录
sql如下:
INSERT INTO customer (id, age, NAME)
VALUE
(1, 12, 'lucheng') ON DUPLICATE KEY UPDATE NAME = 'lucheng',
age = 12
2. ON DUPLICATE KEY UPDATE ,通过唯一的索引约束来达到校验是否存在
表结构如下:
CREATE TABLE `customer` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`age` int(1) DEFAULT NULL,
`name` varchar(1024) DEFAULT NULL,
`remark` varchar(1024) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `age` (`age`,`name`(767)) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;
这里唯一索引是 age和name两个字段确定唯一一条记录
sql 如下:
INSERT INTO customer (age, NAME, remark)
VALUE
(12, 'lucheng','12312321') ON DUPLICATE KEY UPDATE NAME = '