MySQL 中一个双引号错位引发的血案

技术小能手 2018-11-22

云栖社区 mysql SQL test update

一、前言

最近经常碰到开发误删除误更新数据,这不,他们又给我找了个麻烦,我们来看下整个过程。

二、过程

由于开发需要在生产环节中修复数据,需要执行120条SQL语句,需要将数据进行更新

于是开发连上了生产数据库,首先执行了第一条SQL

update tablename set source_name = "bj1062-北京市朝阳区常营北辰福第"
where source_name = "-北京市朝阳区常营北辰福第"

我们仔细看了下,这个SQL,的确没有什么问题,where条件也是正常的,大意就是将这个地址的前面加字符串bj1062,是真的没有错误么?是的没有错误。开发执行完成后,结果的确是符合预期。

然后开发执行了剩下的SQL,都是和上面的SQL一样,将地址进行更新。执行完成后,开发懵逼了,发现source_name都变成了0,开发赶紧给我打






登录 后评论
下一篇
冒顿单于
6546人浏览
2019-08-28
相关推荐
一个配置引发的血案
446人浏览
2019-03-25 13:53:59
算法学习之基础题
302人浏览
2016-08-28 00:03:00
PHP漏洞全解
443人浏览
2015-10-10 15:32:00
一个冒号引发的“血案”
804人浏览
2016-04-25 19:39:00
Bitmap.recycle引发的血案
520人浏览
2016-01-25 16:26:23
0
0
0
776