当前位置: 首页 > wzjs >正文

杭州知名的企业网站建设策划如何介绍自己设计的网页

杭州知名的企业网站建设策划,如何介绍自己设计的网页,班级手机网站墨刀怎样做,怎么联系创意设计网站我们日常在使用 insert into 语句向表中插入数据时,一定遇到过主键或唯一索引冲突的情况,当遇到这种情况时,MySQL默认的反应是报错并停止执行后续的语句,为了避免这种情况,你有3种选择: 使用insert ignore…

我们日常在使用 insert into 语句向表中插入数据时,一定遇到过主键或唯一索引冲突的情况,当遇到这种情况时,MySQL默认的反应是报错并停止执行后续的语句,为了避免这种情况,你有3种选择:

  • 使用insert ignore into语句忽略冲突语句并继续执行。
  • 使用replace into语句对冲突记录进行替换,用法见链接:MySQL 插入替换语句(replace into statement)
  • 使用insert…on duplicate key update语句对冲突记录进行更新。

文章目录

  • 一、insert … on duplicate key update语句简介
    • 1.1 基本用法
    • 1.2 同时引用新旧值

一、insert … on duplicate key update语句简介

1.1 基本用法

创建一张测试表test,其中id为主键,并插入2条数据:

create table test(
id int not null auto_increment primary key,
source varchar(16),
val int,
conflict int);truncate table test;
insert into test values(1,'insert',100,0),(2,'insert',200,0);
table test;

在这里插入图片描述

下面使用insert…on duplicate key update语句插入2条记录,其中id=1的记录将与原表中的记录产生主键冲突:

insert into test values(3,'insert_update',300,0),(1,'insert_update',400,1) 
on duplicate key update conflict=conflict+1; 
table test;

在这里插入图片描述
根据执行结果,可以看到on dupldate update语句存在下面特点:
- 当不存在主键或唯一键冲突时,它就是普通的insert语句(id=3)。
- 当存在主键或唯一键冲突时,它会插入失败,同时执行on duplicate update后的语句。
- 成功插入时影响1行,出现冲突时影响2行,因此这里影响的数据行是3。

1.2 同时引用新旧值

insert…on update 语句最大的用处还是在出现冲突时,可以同时对新旧值进行引用,这意味着它非常适合需要累加的场景。

现在要求当出现ID冲突时将新旧的val值累加保存到表中,通过列名可以直接引用表中的旧值,而通过values(列名)可以引用即将插入的新值:

insert into test values(1,'insert_update',300,0) 
on duplicate key update conflict=conflict+1, val=val+values(val); 

在这里插入图片描述

除了使用values函数,还可以通过给新增的列取别名,并通过别名引用,例如将新插入的列取名为new,上面的语句可以改写为:

insert into test values(1,'insert_update',300,0) as new
on duplicate key update test.conflict=test.conflict+1, test.val=test.val+new.val; 

在这里插入图片描述

上面的语句中由于记录new默认和原表字段名相同,所以要通过前缀来区分新旧记录,你也直接给new的字段取不同的别名:

insert into test values(1,'insert_update',300,0) as new(a,b,c,d)
on duplicate key update conflict=conflict+1, val=val+c; 

在这里插入图片描述

以上即是insert…on update 语句的基本用法,结合insert ignore和replace into语句,你即可以在出现insert主键或唯一键冲突时根据需要选择合适的处理方案。

http://www.dtcms.com/wzjs/204455.html

相关文章:

  • 创意聊城做网站的公司seo是什么意思如何实现
  • 好的策划方案网站哪里可以买链接网站
  • 网站要怎么上传产品推广方法
  • 虚拟主机和网站空间开户推广竞价开户
  • 关于建设门户网站郑州seo关键词排名优化
  • 重庆时时彩网站建设宁波正规优化seo公司
  • ajax jsp网站开发从入门到精通微博营销案例
  • 门户网站建设工作情况公众号软文范例100
  • iis网站访问权限设置网络推广的方法包括
  • 网站源码上传教程泰安百度推广电话
  • 软件科技公司网站模板下载高报师培训机构排名
  • 昆明企业网站制作seo系统培训哪家好
  • 贵州网站设计南京百度竞价推广公司排名
  • 快速网站优化服务怎么在百度上做网站
  • discuz 做论坛与网站开封网站推广公司
  • 上海怎么制作网站工业和信息化部
  • 应该如何做营销型网站微信软文模板
  • 赤峰做网站开发南昌搜索引擎优化
  • 营销型网站建设需要备案吗seo 的作用和意义
  • 西安网站建设制作网络营销工作内容是什么
  • 网站 做实名认证吗seo短视频网页入口引流免费
  • php动态网站开发简答题百度指数关键词工具
  • 个人做网站开发指标手机百度seo怎么优化
  • jsp做视频网站保定seo建站
  • 浅谈中兴电子商务网站建设暴风seo论坛
  • 网站运营推广方案班级优化大师免费下载电脑版
  • m 外贸网站腾讯推广平台
  • 重庆市建设局网站抖音权重查询
  • 专业沈阳网站制作2021最近比较火的营销事件
  • 网站流量跟钱的关系搜索引擎优化是什么?