MySQL:update set的坑

news/2024/7/24 10:11:45 标签: mysql, 数据库

目录

一、问题描述

二、为何会出现这样的问题?

三、正确的方案


一、问题描述

我在修改mysql数据表时,看到下面的现象。

我表中原始数据如下:

执行了下面的修改,显示执行成功。

update user_function_record_entity 
set open_id = 8 and reason = '已修改' and create_time = now() 
where id = 2;

再次查询数据如下:

从修改后的数据看,不是我预期的结果,为什么呢?

下面就来分析分析。

二、为何会出现这样的问题?

首先,其根本问题在于 set 后用了 and

因为 set 的语法是,当修改多个值时,是用英文逗号间隔,而不是and间隔。

那为什么在执行命令时,没有提示错误呢。

因为带了and的命令,其真实执行逻辑如下

update user_function_record_entity 
set open_id = (8 and reason = '已修改' and create_time = now())
where id = 2;

因为 (8 and reason = '已修改' and create_time = now())  通过逻辑运算是false,

所以,才会把 open_id 设置为 0 。

三、正确的方案

正确的命令如下

update user_function_record_entity 
set open_id = 8, reason = '已修改', create_time = now()
where id = 2;

原始值:

修改命令执行后:

所以,为了避免这样的坑,记住正确的命令格式。这个坑一般真的很难发现


我是程序员娟娟,

致力将工作中遇到的问题和解决方案记录下来,

分享给更多需要的同行。

如果对你有帮助,不妨点个关注吧!


http://www.niftyadmin.cn/n/5243005.html

相关文章

BLUE引擎开始游戏没反应如何解决

很常见的架设配置出错导致blue引擎开始游戏按钮灰色选择服务器断开点开始游戏没反应怎么办?简单说下这类问题通常 是网关与登录器不配套,替换生成登录器同上生成的网关以及logingate网关IP给占用了或者客户端文件bluem2_client.dat是否和登录器版本不一致。 1、开始…

【算法问题】N 皇后问题

目录 1.问题定义2.思路分析2.1.基于数组的回溯2.2.基于集合的回溯2.3.基于位运算的回溯 3.代码实现 (Java)3.1.基于数组的回溯3.2.基于数组的回溯3.3.基于位运算的回溯 4.扩展 参考:52.N 皇后 II 1.问题定义 (1)在国际象棋的规则中&#xff…

QGraphicsView实现简易地图7『异步加载-多瓦片-无底图』

前文链接:QGraphicsView实现简易地图6『异步加载-单瓦片-无底图』 前一篇文章提到的异步单瓦片加载,是指线程每准备好一个瓦片数据后,立刻抛出信号让主线程加载。而本篇异步多瓦片加载是指线程准备好所有瓦片数据后,一起抛出信号让…

关于找不到mfc140u.dll,无法继续执行代码问题的修复教程详解

在打开电脑软件过程中,我们经常会遇到一些错误提示,其中之一就是“找不到mfc140u.dll,无法继续执行代码”。这个问题可能是由于多种原因引起的,但不用担心,下面我将为大家介绍五种解决方案。 首先,让我们了…

操作系统的运行机制+中断和异常

一、CPU状态 在CPU设计和生产的时候就划分了特权指令和非特叔指令,因此CPU执行一条指令前就能断出其类型 CPU有两种状态,“内核态”和“用户态” 处于内核态时,说明此时正在运行的是内核程序,此时可以执行特权指令。 处于用户态…

pymysql.err.InternalError: (1054, “Unknown column ‘nan‘ in ‘field list‘“

记录在本地环境通过,然后在云环境,解决问题的过程; 最近两天遇到一个bug,具体就是在本地Pyhon环境运行成功,但是当放在云服务跑的时候,去屡屡报错,具体报错信息如下: pymysql.err.I…

ZKP Understanding Nova (1): MinRoot Example

Understanding Nova Kothapalli, Abhiram, Srinath Setty, and Ioanna Tzialla. “Nova: Recursive zero-knowledge arguments from folding schemes.” Annual International Cryptology Conference. Cham: Springer Nature Switzerland, 2022. Nova: Paper Code 1. Unders…

基于微服务架构的外卖系统源码开发

在当前互联网时代,外卖行业蓬勃发展,用户对于高效、智能的外卖服务需求不断增加。为了满足这一需求,采用微服务架构的外卖系统成为了开发的主流方向。本文将探讨基于微服务的外卖系统源码开发,涉及到关键技术和示例代码。 1. 微…