百度 | 神马 | 搜狗 | 技术文档 | 学习资料分享 - 记录帝国CMS及运维技术的点点滴滴
你的位置:首页 > 实用IT技术 » 正文

【Wordpress相关】MySQL 如何实现重复插入时更新

发布时间:2020-09-17

作品分类:Wordpress相关  已有  会报  语句  入时  如何实现  重复  更新  MySQL

MySQL 如何实现重复插入时更新,

最近 MySQL 数据库经常报错 Duplicate key 的错误,虽然我已经在 Insert 之前使用 query 进行了判断,如果已有则更新,但是还是经常会报这个错误,经过一段查询资料,发现 MySQL 已经提供了两种解决方法:

ON DUPLICATE KEY UPDATE

这个方法就是在 Insert 语句的时候,加上这个语句,如果数据库里面已有则更新。比如:

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script>

INSERT INTO table (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c=c+1;

我们还可以在 UPDATE 子句中使用 VALUES(col_name )函数从 INSERT 部分引用列值:

INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6) ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);

插入多行情况:

INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6) ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);

REPLACE INTO

REPLACE INTO 则会先删除数据,然后再插入。

REPLACE INTO table (a,b,c) VALUES (1,2,3);

本站推荐使用的主机:,国外主机建议使用

Top