MySQL中怎么防止重复插入数据
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这期内容当中小编将会给大家带来有关MySQL中怎么防止重复插入数据,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。新建表格CREATE TABLE `person`
千家信息网最后更新 2025年11月07日MySQL中怎么防止重复插入数据

这期内容当中小编将会给大家带来有关MySQL中怎么防止重复插入数据,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
新建表格
CREATE TABLE `person` ( `id` int NOT NULL COMMENT '主键', `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '姓名', `age` int NULL DEFAULT NULL COMMENT '年龄', `address` varchar(512) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '地址', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Dynamic;
添加三条数据如下:

我们这边可以根据插入方式进行规避:
1. insert ignore
insert ignore 会自动忽略数据库已经存在的数据(根据主键或者唯一索引判断),如果没有数据就插入数据,如果有数据就跳过插入这条数据。
插入SQL如下: insert ignore into person (id,name,age,address) values(3,'那谁',23,'甘肃省'),(4,'我的天',25,'浙江省');
再次查看数据库就会发现仅插入id为4的数据,由于数据库中存在id为3的数据所以被忽略。

2. replace into
replace into 首先尝试插入数据到表中, 1. 如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据。 2. 否则,直接插入新数据。
插入SQL如下: replace into person (id,name,age,address) values(3,'那谁',23,'甘肃省'),(4,'我的天',25,'浙江省');
首先我们将表中数据恢复,然后进行插入操作后发现id为3的数据发生了改变同时新增了id为4的数据。
3. insert on duplicate key update
insert on duplicate key update 如果在insert into语句的末尾指定了on duplicate key update + 字段更新,则会在出现重复数据(根据主键或者唯一索引判断)的时候按照后面字段更新的描述对该信息进行更新操作。
插入SQL如下: insert into person (id,name,age,address) values(3,'那谁',23,'甘肃省') on duplicate key update name='那谁', age=23, address='甘肃省';
首先我们将表中数据恢复,然后在进行插入操作时,发现id为3的数据发生了改变,进行了更新操作。
上述就是小编为大家分享的MySQL中怎么防止重复插入数据了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。
数据
甘肃
甘肃省
更新
数据库
索引
内容
字段
数据恢复
浙江
浙江省
分析
专业
中小
信息
内容丰富
再次
同时
地址
姓名
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
厦门网络安全技术培训课程
连云港住宿软件开发
数据库原理自考
网络技术标准第几代
驾管处服务器坏了多久能修好
计算机网络技术基本学后感
实况2022服务器更新时间
世界互联网科技有哪些
dukascopy服务器租
华为服务器风扇怎么接线
学手机软件开发好就业吗
软件开发售前技术
泰拉瑞亚1.4国际服服务器ip
北京职业软件开发erp
网络技术应用各章节知识点
服务器分离后能联网吗
锡山区电话软件开发系统
服务器运营公告
济宁戴尔服务器电话
网络安全理解及看法
北京盈丰伟业网络技术有限公司
工业网络安全公司
计算机网络技术基本学后感
高性能嵌入式数据库
奇虎360网络安全研究院
电子政务网络安全建设推进会
服务器超过多少会导致硬盘损坏
中医治疗病人数据库
数据库什么情况下分库分表
vs如何运用数据库