MySQL-插入数据(insert into,replace into)

2023-11-04

插入数据的方法

mysql中常用的三种插入数据的语句:

  • insert into:正常的插入数据,插入数据的时候会检查主键或者唯一索引,如果出现重复就会报错;
  • replace into:表示插入并替换数据,若表中有primary key或者unique索引,在插入数据的时候,若遇到重复的数据,则用新数据替换,如果没有数据效果则和insert into一样;
  • insert ignore into:插入并忽略数据,如果表中已经存在相同的记录,则忽略当前新数据(有则忽略,无则添加)。

语法介绍

insert into

每个字段与其值是严格一一对应的。也就是说:每个值、值的顺序、值的类型必须与对应的字段相匹配。但是,各字段也无须与其在表中定义的顺序一致,它们只要与 VALUES中值的顺序一致即可。

# 表中有些字段有默认值,则可以直接根据字段插入数据
INSERT INTO 表名(字段名1,字段名2,...) VALUES (1,2,...);

# 按照表中所有字段进行插入数据,一定要与字段在表中定义的顺序一致
INSERT INTO 表名 VALUES (1,2,...);

insert ignore into

这种方式的语法跟insert into 是一样的,只不过在遇到重复的数据时做出的处理不一致,有重复的就忽略该条数据的插入。

# 表中有些字段有默认值,则可以直接根据字段插入数据
INSERT IGNORE INTO 表名(字段名1,字段名2,...) VALUES (1,2,...);

# 按照表中所有字段进行插入数据,一定要与字段在表中定义的顺序一致
INSERT IGNORE INTO 表名 VALUES (1,2,...);

MySQL 自4.1版以后开始支持INSERT … ON DUPLICATE KEY UPDATE语法,对于插入数据时候遇到重复的primary key 时候,可以进行数据的更新,就避免了insert ignore into遇到重复的数据直接忽略的不足。但是一定要保证使用的时候是想要更新重复数据哦,不然就尴尬啦~~

INSERTON DUPLICATE KEY UPDATE

replace into

注意的是:插入数据的表必须有主键或者是唯一索引!否则的话,replace into 会直接插入数据,这将导致表中出现重复的数据。

REPLACE INTO 表名(字段名1,字段名2,...) VALUES (1,2,...);

REPLACE INTO 表名 VALUES (1,2,...);

原文链接:https://blog.csdn.net/weixin_42272869/article/details/116480732

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL-插入数据(insert into,replace into) 的相关文章

随机推荐

  • 等保2.0建设

    现在的等保2 0建设都是要完整
  • Springboot整合mybatis(注解-基础篇)最通俗易懂的文章

    注解开发mybatis 开发流程 1 引入MyBatis依赖 maven下的springboot添加如下坐标即可 POM xml
  • 微信小程序——云函数部署问题

    摸索了一个下午才明白云函数是什么 效率真的有点低 不过好在还是弄出来了 云开发 即无需搭建服务器 将云端当做服务端 只需进行前端开发 小程序 云开发提供了三个基础能力 数据库 存储和云函数 数据库 json数据库 就理解为往里面存的是jso
  • ApplicationContext 与 BeanFactory 区别(MS)

    1 从继承关系上来说 BeanFactory 是 的父类 BeanFactory 只是提供了基础操作Bean的方法 ApplicationContext除了拥有父类的基础操作之外 还提供了自己独有的功能 2 从性能方面上来说 Applica
  • 关于PHP发送邮箱验证码功能介绍

    关于PHP发送邮箱验证码功能介绍 PHP语言发送邮箱验证码 可以使用PHPMailer这个现成的类文件 完美集成实现邮箱发送验证码 前期准备 a PHPMailer下载地址 在git上获取最新版即可 https github com PHP
  • vue 前端内存问题 解决方案

    前端内存问题 JavaScript heap out of memory 解决 1 全局安装increase memory limit npm install g increase memory limit 2 进入工程目录 执行 incr
  • 动态规划经典题目:最大连续子序列和、最大不连续子序列和

    1 最大连续子序列和 记数组为nums 思路 记录dp i 为i位置结尾的最大连续子序列和 则有dp i dp i 1 gt 0 dp i 1 nums i nums i 然后求dp数组的max即为最终结果 1 最大不连续子序列和 记数组为
  • java数组程序_Java数组

    7 1数组 l 数组是多个相同类型数据的组合 实现对这些数据的统一管理 l 数组中的元素可以是任何数据类型 包括基本数据类型和引用数据类型 l 数组属引用类型 数组型数据是对象 object 数组中的每个元素相当于该对象的成员变量 7 2一
  • element-ui遮罩层

    通用下载方法内 通用下载方法 export function download url params filename method downloadLoadingInstance Loading service text 正在下载数据 请
  • 7-WebApis-6

    Web APIs 6 目标 能够利用正则表达式完成小兔鲜注册页面的表单验证 具备常见的表单验证能力 正则表达式 综合案例 阶段案例 正则表达式 正则表达式 Regular Expression是一种字符串匹配的模式 规则 使用场景 例如验证
  • 启动nacos报错:Exception in thread main java.lang.UnsupportedClassVersionError

    最近在做微服务项目的时候用到nacos 使用的版本分别是最新版nacos server 2 0 2和nacos server 1 4 2 但是在启动的时候报错了先看一下报错信息吧 报错信息 G nacos server 1 4 2 naco
  • 单相并网逆变器学习记录-------------SOGI-PLL锁相环

    目录 一 锁相环的简介 二 dq坐标系 三 SOGI生成 坐标系 四 SOGI PLL 五 SOGI PLL的仿真 一 锁相环的简介 进入21世纪 随着资源 环境问题的日益加剧 以太阳能 风能和热电联产等为代表的可再生 清洁能源纷纷通过逆变
  • JetBrains Account connection error: java.security.SignatureException: Signat

    用学生账户注册登录idea时 网上看到了很多解决方式 大部分都是修改hosts文件 即删除里面的 0 0 0 0 account jetbrains com 0 0 0 0 www jetbrains com 那么问题来了 我的 hosts
  • 被勒索病毒加密的文件如何破解?

    想要硬刚勒索病毒 脱密加密的文件 是很难的 之前 我已经介绍了数字签名 勒索病毒使用了公钥加密另一个常用应用 数字信封 技术 想要恢复勒索病毒加密的文件 可以破解黑客的公钥 或者破解黑客加密文件的临时对称密钥 而这2种算法 黑客都选用了目前
  • 如何在项目中使用kafka?

    1 如何在项目中使用kafka 1 1 因为kafka的使用依赖于zookeeper https mp weixin qq com s geR3pDw Yjhmu8KMsXQosg在kafka v2 8版本后将zookeeper也集成在了服
  • 【系统篇 / 域】❀ 06. Windows10 加入域 ❀ Windows Server 2016

    简介 众所周知 Windows Server 2016 与其它版本不同的地方就是支持 Windows10 加入域服务了 修改 DNS Windows10 加入域之前 需要把网卡的DNS指向域服务器 在Windows10系统中 鼠标右击右下角
  • Elasticsearch自定义评分的多种方法

    Elasticsearch自定义评分的多种方法 在大数据领域 Elasticsearch是一个广泛使用的开源搜索和分析引擎 它提供了强大的搜索功能 并支持通过自定义评分机制来调整搜索结果的排序 在本文中 我们将探讨Elasticsearch
  • 导师总结的最全python核心知识点汇总笔记,260页最完整版。

    python学习简单 但完全掌握还是会有许多重难点 本次收集了python从入门到精通的所有重难知识点详细梳理讲解 并附有多种思路与方法 配合案例可以更快速的让你掌握相关知识节点 这份笔记由导师亲自汇总整理编辑 共计260页内容 堪称经典
  • php写layui上传接口,layui 富文本图片上传接口与普通按钮 文件上传接口的例子

    富文本 图片上传 html js 记得之前引入layui js layui use layedit function var layedit layui layedit layedit set uploadImage url url ind
  • MySQL-插入数据(insert into,replace into)

    插入数据的方法 mysql中常用的三种插入数据的语句 insert into 正常的插入数据 插入数据的时候会检查主键或者唯一索引 如果出现重复就会报错 replace into 表示插入并替换数据 若表中有primary key或者uni