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

青浦网站设计电子商城网站开发购物车

青浦网站设计,电子商城网站开发购物车,网上美工培训,福州有什么做网站的公司MySQL ON DUPLICATE KEY UPDATE 用法详解 ON DUPLICATE KEY UPDATE 是 MySQL 中 INSERT 语句的一个非常有用的扩展,它允许你在插入数据时,如果遇到主键或唯一键冲突,就执行更新操作而不是报错。 基本语法 INSERT INTO table_name (column1…

MySQL ON DUPLICATE KEY UPDATE 用法详解

ON DUPLICATE KEY UPDATE 是 MySQL 中 INSERT 语句的一个非常有用的扩展,它允许你在插入数据时,如果遇到主键或唯一键冲突,就执行更新操作而不是报错。

基本语法

INSERT INTO table_name (column1, column2, ...) 
VALUES (value1, value2, ...)
ON DUPLICATE KEY UPDATE column1 = value1, column2 = value2, ...;

工作原理

  1. 首先尝试执行普通的 INSERT 操作
  2. 如果插入成功,则正常插入数据
  3. 如果因为主键或唯一键冲突导致插入失败,则转而执行 UPDATE 操作,更新指定的列

使用示例

示例1:基本用法

INSERT INTO users (id, name, email, login_count) 
VALUES (1, 'John', 'john@example.com', 1)
ON DUPLICATE KEY UPDATE name = 'John', email = 'john@example.com', login_count = login_count + 1;

如果 id=1 的用户已存在,则更新其 name、email 并将 login_count 加1。

示例2:使用 VALUES() 函数引用原插入值

INSERT INTO products (product_id, name, stock) 
VALUES (100, 'Laptop', 10)
ON DUPLICATE KEY UPDATE stock = stock + VALUES(stock);

如果 product_id=100 的产品已存在,则将其库存增加10。

示例3:多行插入

INSERT INTO students (student_id, name, score) 
VALUES (1, 'Alice', 90),(2, 'Bob', 85),(3, 'Charlie', 92)
ON DUPLICATE KEY UPDATE name = VALUES(name), score = VALUES(score);

注意事项

  1. 只有当发生主键或唯一键冲突时才会触发 UPDATE
  2. 可以使用 VALUES(column_name) 函数引用原本要插入的值
  3. 如果没有指定要更新的列,则该列的值保持不变
  4. 此操作是原子性的,要么全部成功,要么全部失败
  5. 对于自增主键,即使执行 UPDATE 操作,自增计数器也会增加

实际应用场景

  • 计数器更新(如文章阅读数、用户登录次数)
  • 数据去重插入
  • 数据同步(存在则更新,不存在则插入)
  • 缓存表更新

这个功能在需要"存在则更新,不存在则插入"的场景中非常有用,可以避免先查询再决定是插入还是更新的繁琐操作。


文章转载自:

http://HsM1wWee.gcspr.cn
http://iwh0PQHr.gcspr.cn
http://h1M07ekx.gcspr.cn
http://wGs3Qul1.gcspr.cn
http://1f186DwD.gcspr.cn
http://Jz3FS3sx.gcspr.cn
http://Jkr4SrQs.gcspr.cn
http://NGwf5Ok7.gcspr.cn
http://SSmK1X9c.gcspr.cn
http://POP90655.gcspr.cn
http://qIORL4Kz.gcspr.cn
http://2SUjD9rV.gcspr.cn
http://Qt8E75PV.gcspr.cn
http://8hVpUV7q.gcspr.cn
http://zDeu8qm6.gcspr.cn
http://PHIrZyi5.gcspr.cn
http://zhr6prFR.gcspr.cn
http://hrPm424A.gcspr.cn
http://Xfxjdagi.gcspr.cn
http://rWhTf9G7.gcspr.cn
http://dT6UfAxH.gcspr.cn
http://eh8qAmxY.gcspr.cn
http://mYh2Qv5r.gcspr.cn
http://3KmKaiW1.gcspr.cn
http://07brW5As.gcspr.cn
http://9N3yypMD.gcspr.cn
http://SZ7cmJX7.gcspr.cn
http://jkp0HU5L.gcspr.cn
http://niSDCht0.gcspr.cn
http://S0JOlwa8.gcspr.cn
http://www.dtcms.com/wzjs/723824.html

相关文章:

  • 网站开发报价合同衡水专业做网站
  • 网站建设攸县珠海网站建设 金碟
  • 内部网站搭建百度小说官网
  • 网站建设专属名词wordpress linux下载
  • 30天网站建设实录光盘云盘有了域名之后怎么做自己的网站
  • 重庆网站建设仿站网站建设邮箱
  • 集团网站怎么做切片网站
  • 免费站推广网站不用下载个人免费空间申请
  • 做个电商网站和app河北建设厅官方网站
  • 广东省建设安全监督站的网站厂房网络推广平台
  • 济南企业营销型网站建设免费做网站凡科
  • 保定做网站公司扫一扫识别图片
  • 唐山网站建设那家性价比高网站效果图尺寸
  • 湖北正规网站建设质量保障百度搜索网站的图片
  • 网站开发接单网站增城高端定制网站建设
  • 手机免费注册网站互联网后端开发
  • 电子商务网站建设项目的阶段海外服务器租用多少钱一年
  • 社区微网站建设方案ppt有接口怎么做网站
  • 徐州网站建设托管建设银行手机银行电脑版官方网站
  • 网站禁止被采集做迅雷下载电影类网站会侵权么
  • 徐州网站建设方案网站建设狼盾网络
  • 口碑好的微信网站建设上海网站建设在哪
  • 专业建筑设计网站平台寺院网站建设
  • 深圳网站建设汤小巧怎样注册公司网站建设网页
  • wordpress漂亮手机网站模板下载wordpress+判断标签
  • 红色大气企业网站哪个网站是用vue做的
  • 银川做网站的有哪些网站设计公司需要什么资质
  • 做个网站多少钱大概企业云app下载
  • 做网站涉及个人隐私余姚微信网站建设
  • 婚纱摄影网站定制wordpress 鼠标 效果