Mysql 新增更新、删除新增、忽略"/>
Mysql 新增更新、删除新增、忽略
当主键或唯一键冲突时,Mysql可以进行更新、删除新增、忽略插入等操作。
1.更新
当主键或唯一键冲突时,可以指定更新内容。
INSERT INTO table_name (column_name, column_name, column_name)
VALUES (column_value, column_value,column_value)
ON DUPLICATE KEY UPDATE column_name = column_value;
INSERT INTO t_user (id, name, age)
VALUES (1, '张三', 23)
ON DUPLICATE KEY UPDATE id = VALUES(id);
2.删除新增
当主键或唯一键冲突时,先删除原始数据,再重新新增。
REPLACE INTO table_name (column_name, column_name, column_name)
VALUES (column_value, column_value,column_value);注意:
自增主键的表,唯一键冲突时会导致主键递增变更。
REPLACE INTO t_user (id, name, age)
VALUES (1, '张三', 23);
3.忽略
当主键或唯一键冲突时,可以直接忽略此新增操作。
INSERT IGNORE INTO table_name (column_name, column_name, column_name)
VALUES (column_value, column_value,column_value);
INSERT IGNORE INTO t_user (id, name, age)
VALUES (1, '张三', 23);
4.执行效率
insert ignore into .. > replace into .. > insert .. on duplicate key update ..。
更多推荐
Mysql 新增更新、删除新增、忽略
发布评论