Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MySQL插入else if exists UPDATE

我正在构建一个包含两列config_name和config_value的配置表。我在一条语句中插入了多行:

代码语言:javascript
运行
AI代码解释
复制
INSERT INTO ".$dbPrefix."config (config_name,config_value) VALUES
             ('domain','$domain'),
             ('forest_root','$fr_if'),
             ('userGroup','$userGroup'),
             ('adminGroup','$adminGroup');

config_name列是主键。如果config_name已经存在,我该如何更改此语句以自动更新config_value?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-04 23:59:20

您可以尝试以下语法:

代码语言:javascript
运行
AI代码解释
复制
INSERT INTO table (field) VALUES (value) ON DUPLICATE KEY UPDATE field=value

文档可以在here上找到。

票数 7
EN

Stack Overflow用户

发布于 2011-11-04 23:59:36

您正在尝试做一个upsert,我认为这可能会有所帮助:http://database-programmer.blogspot.com/2009/06/approaches-to-upsert.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8017087

复制
相关文章
MySQL_插入更新 ON DUPLICATE KEY UPDATE
1、效率太差,每次执行都要执行2个sql 2、高并发的情况下数据会出问题,不能保证原子性
全栈程序员站长
2022/08/09
7670
mysql中not exists用法_not exists用法
not exists是sql中的一个语法,常用在子查询和主查询之间,用于条件判断,根据一个条件返回一个布尔值,从而来确定下一步操作如何进行,not exists也是exists或in的对立面。
全栈程序员站长
2022/09/13
9.5K0
mysql中not exists用法_not exists用法
Mysql exists用法小记
EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False。
翎野君
2023/05/12
5720
mysql update 报错
You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect.    0.000 sec
句小芒
2022/12/29
2.9K0
mysql中exists的用法详解[通俗易懂]
在日常开发中,用mysql进行查询的时候,有一个比较少见的关键词exists,我们今天来学习了解一下这个 exists这个sql关键词的用法,这样在工作中遇到一些特定的业务场景就可以有更加多样化的解决方案
全栈程序员站长
2022/11/01
6.1K0
解决 mysql 插入数据报错: Cannot add or update a child row: a foreign key constraint fails
场景:我的情况是主表为用户 user 表,从表为职位 job 表,其中 job 表有一个外键为 user 表的主键。
微风-- 轻许--
2022/04/13
2.2K0
mysql update,insert常用
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/details/77984451
bear_fish
2018/09/14
3.9K0
mysql update,insert常用
MySQL insert or update sql
MySQL 一条 sql 实现数据保存变更 insert or update ,如果没有执行insert,有就update
全栈程序员站长
2022/11/15
3.3K0
MySQL UPDATE “经典”坑
问题归纳起来就是:在MySQL里面update一条记录,语法都正确的,但记录并没有被更新...
php007
2019/08/05
3.1K0
MySQL UPDATE “经典”坑
原exists, not exists用法
tableA |column1 | column1 |column3 | ---- tableb |column1 | column1 |column3 | ---- 要查询 tableA 的数据,条件是是 tableA.column1 不在 tableB 的 tableB.column2 中 也就是要得到类似以下语句的效果(not in 效果不完全等同于 not exists , 如果子查询中出现空记录, 则整个查询语句不会返回数据) SELECT a.* FROM tableA a
zcqshine
2018/05/11
1.2K0
MySQL的SELECT …for update
  最近的项目中,因为涉及到Mysql数据中乐观锁和悲观锁的使用,所以结合项目和网上的知识点对乐观锁和悲观锁的知识进行总结。
全栈程序员站长
2022/07/20
4.3K0
MySQL的SELECT …for update
MySQL not exists 真的不走索引么?
在一些业务场景中,会使用NOT EXISTS语句确保返回数据不存在于特定集合,部分同事会发现NOT EXISTS有些场景性能较差,甚至有些网上谣言说”NOT EXISTS不走索引”,哪对于NOT EXISTS语句,我们如何优化呢?
Java技术栈
2020/08/20
3.1K0
MySQL not exists 真的不走索引么?
MySQL(七)|MySQL中In与Exists的区别(1)
最近被一条SQL语句弄的有点兴奋,具体情况是这样的... 我这边有两个表需要关联查询,表的情况如下: # 2759174行数据 SELECT COUNT(*) FROM tb_data t1; # 7262行数据 SELECT COUNT(*) FROM tb_task t2; # 执行时间为44.88s SELECT SQL_NO_CACHE t1.id FROM tb_data t1 WHERE t1.task_id IN (SELECT t2.id FROM tb_task t2); # 执行
黄小怪
2018/06/06
17.6K1
MySQL(八)|MySQL中In与Exists的区别(2)
关于In与Exists的比较,先说结论,归纳出IN 和Exists的适用场景: 1)IN查询在内部表和外部表上都可以使用到索引。 2)Exists查询仅在内部表上可以使用到索引。 3)当子查询结果集很大,而外部表较小的时候,Exists的Block Nested Loop(Block 嵌套循环)的作用开始显现,并弥补外部表无法用到索引的缺陷,查询效率会优于IN。 4)当子查询结果集较小,而外部表很大的时候,Exists的Block嵌套循环优化效果不明显,IN 的外表索引优势占主要作用,此时IN的查询
黄小怪
2018/06/06
4.7K0
MySQL插入数据
其中,table_name是要插入数据的表格的名称,column1、column2、column3等是表格的列名,value1、value2、value3等是要插入的数据。请注意,要插入的数据的数量必须与列的数量相同,并且数据的顺序必须与列的顺序相同。
堕落飞鸟
2023/05/10
4.3K0
MySQL 插入数据
你可以通过 mysql> 命令提示窗口中向数据表中插入数据,或者通过PHP脚本来插入数据。
用户6884826
2021/07/07
6.8K0
MySQL Update执行流程解读
一、update跟踪执行配置 使用内部程序堆栈跟踪工具path_viewer,跟踪mysql update 一行数据的执行过程,配置执行脚本:call_update.sh DROP DATABASE IF EXISTS d1; CREATE DATABASE d1; use d1; drop table if exists test; CREATE TABLE test (c0 int NOT NULL AUTO_INCREMENT,c1 date DEFAULT NULL,c2 time DEFA
GreatSQL社区
2022/04/01
2.5K1
MySQL 案例:Update 死锁详解
锁作为 MySQL 知识体系的主要部分之一,是每个 DBA 都需要学习和掌握的知识。锁保证了数据库在并发的场景下数据的一致性,同时锁冲突也是影响数据库性能的因素之一。而锁冲突中,有一类很经典的场景经常会拿出来讨论:死锁。最近刚好也遇到了一个典型的死锁案例,本文会基于这个案例,做一次详细的分析与拆解。
王文安@DBA
2020/10/26
15.6K4
MySQL 案例:Update 死锁详解
MySQL 插入数据
你可以通过 mysql> 命令提示窗口中向数据表中插入数据,或者通过PHP脚本来插入数据。
用户1168904
2021/08/06
7K0
Mysql update多表联合更新
下面我建两个表,并执行一系列sql语句,仔细观察sql执行后表中数据的变化,很容易就能理解多表联合更新的用法
周小董
2019/08/14
3.9K0

相似问题

MySQL update if exists else insert

30

IF EXISTS UPDATE ELSE INSERT使用mysql

334

Update Else插入MySQL查询

31

SQLite insert if not exists else update

28

如何为If Exists、Update、Else Insert编写MySQL查询?

11
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档