SQL——插入已经存在的数据

现在有一套ID为9003的高难度SQL试卷,时长为一个半小时,请你将 2021-01-01 00:00:00 作为发布时间插入到试题信息表examination_info(其表结构如下图),不管该ID试卷是否存在,都要插入成功,请尝试插入它。

|--------------|-------------|------|-----|----------------|---------|---------|
| Filed | Type | Null | Key | Extra | Default | Comment |
| id | int(11) | NO | PRI | auto_increment | (NULL) | 自增ID |
| exam_id | int(11) | NO | UNI | | (NULL) | 试卷ID |
| tag | varchar(32) | YES | | | (NULL) | 类别标签 |
| difficulty | varchar(8) | YES | | | (NULL) | 难度 |
| duration | int(11) | NO | | | (NULL) | 时长(分钟数) |
| release_time | datetime | YES | | | (NULL) | 发布时间 |

如果直接插入则会提示,数据表中已存在该exam_id,该如何处理呢?

难点:不知道该数据是否存在,若存在可用update,若不存在可用insert。

方案:采用replace语句

sql 复制代码
replace into examination_info(exam_id,tag,difficulty,duration,release_time)
values(9003,'SQL','hard',90,'2021-01-01 00:00:00')

参考: MySQL关于replace语句的文档

相关推荐
三水不滴9 分钟前
Redis 持久化机制
数据库·经验分享·redis·笔记·缓存·性能优化
lusasky20 分钟前
Claude Code v2.1.0+ 版本集成LSP
大数据·数据库·人工智能
凯子坚持 c27 分钟前
Qt常用控件指南(7)
服务器·数据库·qt
diediedei35 分钟前
Python字典与集合:高效数据管理的艺术
jvm·数据库·python
气可鼓不可泄35 分钟前
将dmpython 封装在容器镜像里
数据库·python
m0_5613596738 分钟前
超越Python:下一步该学什么编程语言?
jvm·数据库·python
mango_mangojuice41 分钟前
Linux学习笔记 1.19
linux·服务器·数据库·笔记·学习
TGITCIC1 小时前
丢掉向量数据库!推理型 RAG 正在重新定义长文档问答的准确边界
数据库·ai大模型·推理·ai搜索·大模型ai·rag增强检索·ai检索
xfhuangfu2 小时前
Oracle AI db 26ai中借助dbca创建pdb的过程
数据库·oracle
heze092 小时前
sqli-labs-Less-28a
数据库·mysql·网络安全