【场景】:不论记录是否存在都要插入记录 【分类】:replace、先delect再insert
分析思路
难点:
1.不论记录是否存在都要插入记录,如果不存在直接新增记录,存在就删除以后重新插入。
方法一、先删除delete再插入insert
- [使用]:写2个语句,先执行delete再执行insert
delete from table where ...;insert into table(col1, col2,...,coln) values (value1, value2,...,valuen)
方法二、使用replace或者replace into
- replace执行时如果插入的数据记录存在就先删除再更新,不存在则直接新增记录。
replace table(col1, col2,...,coln) values (value1, value2,...,valuen)
扩展
前往查看:MySQL 插入语句
求解代码
方法一:
先删除delete再插入insert + 写字段名
delete from
examination_info
where exam_id = 9003;
insert into
examination_info(exam_id,tag,difficulty,duration,release_time)
values(9003, 'SQL','hard', 90, '2021-01-01 00:00:00')
方法二:
使用replace + 不写字段名
replace
examination_info
values(default, 9003, 'SQL','hard', 90, '2021-01-01 00:00:00')