MySQL中怎么防止重复插入数据
发表于:2025-01-28 作者:千家信息网编辑
千家信息网最后更新 2025年01月28日,这期内容当中小编将会给大家带来有关MySQL中怎么防止重复插入数据,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。新建表格CREATE TABLE `person`
千家信息网最后更新 2025年01月28日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安全错误
数据库的锁怎样保障安全
深圳海尔软件开发
sql关联取第一行数据库
网络安全消费为ppt
英雄联盟手游为什么服务器维护
办公室物品管理系统数据库设计
人际交往网络安全问题及对策
淮南通信软件开发哪家好
丝绸之路国家网络安全现状
网络安全专业福建省
培训中心开展网络安全知识培训
南通理工学院网络安全专业
江苏发展软件开发代理商
数据库原理与sql应用技术
北京服务器搬运怎么选云主机
数据库起服务器
关于数据库视图删除数据库
为某基层单位建立一个数据库
怎么进入软件开发行业
大学生网络安全知识竞赛难度
陪玩软件开发费用
网络安全案例大学生
图书馆网络技术部职责
收件服务器发件服务器怎么填
固镇im即时通讯软件开发
上海酷娱网络技术有限公司
现代广告设计软件开发
软件开发哪个学校好点
服务器收费
数据库起服务器
简单的数据库系统