1.IGNORE

当使用INSERT语句向表中添加一些行数据并且在处理期间发生错误时,INSERT语句将被中止,并返回错误消息。因此,可能不会向表中没有插入任何行。
但是,如果使用INSERT INGORE语句,则会忽略导致错误的行,并将其余行插入到表中。

insert IGNORE into table(xxx,xxx) VALUES (xxx,xxx);

insert IGNORE into `test` (`id`,`name`,`times`,`add_time`)
VALUES
('1','woq','3','1529304418'),
('2','woa','4','1529304452'),
('3','woz','5','1529304425'),
('4','wow','6','1529304445');

2.REPLACE INTO

如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据。
否则,直接插入新数据。
要注意的是:插入数据的表必须有主键或者是唯一索引!否则的话,replace into 会直接插入数据,这将导致表中出现重复的数据。

REPLACE INTO table (xxx,xxx) VALUES (xxx,xxx);
REPLACE into `test` (`id`,`name`,`times`,`add_time`)
VALUES
('1','woq','3','1529304418'),
('2','woa','4','1529304452'),
('3','woz','5','1529304425'),

('4','wow','6','1529304445');

使用注意事项:

https://yq.aliyun.com/articles/57855

3.ON DUPLICATE KEY UPDATE

ON DUPLICATE KEY UPDATE 语法并不是MySQL的标准语法,如果在句尾指定该语法,他会根据指定的主键或者唯一标示来更新数据库的内容

具体的操作是想根据唯一标示查看数据库是否存在该记录,如果存在该记录就更新,如果不存在就会插入一条新的记录,

INSERT INTO TABLE (xxx,xxx) VALUES(xxx,xxx)  ON DUPLICATE key UPDATE `field_name`='xxx';
INSERT
INTO test (`id`,`name`,`times`,`add_time`) VALUES
('1','kk','4','1531282881') ON DUPLICATE KEY UPDATE
`add_time`='1531284238';

mysql CONFLICT 冲突的更多相关文章

  1. mysql字段冲突报错

    check the manual that corresponds to your MySQL server version for the right syntax to use near 出现这个 ...

  2. CUDA中Bank conflict冲突

    转自:http://blog.csdn.net/smsmn/article/details/6336060 其实这两天一直不知道什么叫bank conflict冲突,这两天因为要看那个矩阵转置优化的问 ...

  3. 记录一次Git解决CONFLICT冲突

    目录 记录一次Git解决CONFLICT冲突 1.CONFLICT产生的原因 2.Git正确的LIANGZHONG 使用流程 2.1 暂存,拉取,恢复暂存,合并(如果有冲突),提交,推送 2.2 将本 ...

  4. git工具,conflict冲突解决方法

    这篇文章需要对git具有一定的了解,并且知道如何安装git工具(其实就是上git官网下载个文件,安装) git这种版本控制工具有什么好处 第一个,方便可以多人协同开发同一个项目或系统 第二个,当你系统 ...

  5. MySql 关键字冲突解决办法

    今天把项目发布到另一台机器上时,因为mysql版本不一致,出现了关键字冲突,virtual关键字,不清楚是不是mysql添加的新特性. select * from herb where name=&q ...

  6. MySQL保留字冲突 关键词:保留字, 关键字

    在Mysql中,当表名或字段名乃至数据库名和保留字冲突时,在sql语句里可以用撇号`(Tab键上方的按键)括起来. 注意,只有保留字需要``括起来,非保留字的关键字不需要. MySQL 8.0 官方文 ...

  7. [svn]svn conflict 冲突解决

    转自:http://www.gezila.com/tutorials/17290.html 目录: 1. 同一处修改文件冲突 1.1. 解决方式一 1.2. 解决方式二 1.3. 解决总结 2. 手动 ...

  8. svn conflict 冲突解决

    1. 同一处修改文件冲突 开发人员都知道代码管理工具是开发中一个必不可少的工具,这里也不废话详细介绍了.不管你个人喜欢git还是svn还是其他,但还有一大部分公司在使用svn做代码管理工具.这里详细介 ...

  9. wamp中的mysql服务与原来安装的mysql服务冲突的解决办法

    如果原来机器上已经安装了mysql,在安装wamp之后,打开wamp上的mysql时会打不开,或者会将原来安装的mysql服务关闭.原因是两个mysql共用了3306端口,解决办法是更改其中的一个端口 ...

  10. mysql关键字冲突

    在冲突的字段加上转移符,这样子就可以了: insert into test_table (wind_code,name,`read`,creade_time) values (?,?,?,?) (注意 ...

随机推荐

  1. Qt/C++音视频开发68-检查是否含有B帧/转码推流/拉流显示/监控拉流推流/海康大华宇视监控

    一.前言 为什么需要判断视频文件是否含有B帧,这个在推流的时候很容易遇到这个问题,一般来说,没有B帧的视频文件,解码后的数据帧pts和dts都是顺序递增的,而有B帧的则未必,可能有些需要先解码后面显示 ...

  2. Qt/C++编写监控实时显示和取流回放工具(回放支持切换进度)

    一.前言 现在各个监控大厂做的设备,基本上都会支持通过rtsp直接取流显示,而且做的比较好的还支持通过rtsp回放取流,基本上都会约定一个字符串的规则,每个厂家都是不一样的规则,比如回放对应的rtsp ...

  3. Qt通用方法及类库4

    函数名 //九宫格图片 horzSplit-宫格1/3/7/9宽度 vertSplit-宫格1/3/7/9高度 dstWidth-目标图片宽度 dstHeight-目标图片高度 static QPix ...

  4. Python开发环境的构建:使用Anaconda与Pycharm

    Anaconda是一个科学计算环境,当在电脑上安装好Anaconda3以后,就相当于安装好了Python,还有一些常用的库,如numpy,scrip,matplotlib等库. (如果你这里没有安装a ...

  5. 基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v9.0版已发布

    关于MobileIMSDK MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级.高度提炼,一套API优雅支持 UDP .TCP .WebSocket 三种协议,支持 iOS ...

  6. 冷水机超频AMD 2600X 4.5G

    整个测试大概持续了一个半小时,期间水温保持在2度左右(±1摄氏度).后来开始冷凝,而且超频也到了4.5G瓶颈,所以停了下来. 全核4.4G过R154.5G过CPU-Z认证(点击查看)温度表现,一般吧. ...

  7. Linux 运维必备 150 个命令汇总

    地址:https://www.linuxcool.com 线上查询及帮助命令 man:全拼manual,用来查看系统中自带的各种参考手册. help:用于显示shell内部命令的帮助信息. 文件和目录 ...

  8. Java API 之 Object

    Object 顶级父类.任何一个类都将 Object 作为父类,也就意味着任何一个对象都可以赋值给 Object 对象.Object 类也是 Java 中唯一的一个没有父类的类. (方法默认是 pub ...

  9. nginx配置参数优化

    ginx作为高性能web服务器,即使不特意调整配置参数也可以处理大量的并发请求.以下的配置参数是借鉴网上的一些调优参数,仅作为参考,不见得适于你的线上业务. worker进程 worker_proce ...

  10. Java线程的安全问题

    当多个线程同时访问同一资源(变量,文件,记录),如果只有读操作,则不会有线程安全问题,如果有读和写操作,则会产生线程安全问题,必须保证共享数据同一时刻只能有同一个线程操作.Java采取的办法是sync ...