加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

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

发布时间:2018-11-23 08:09:37 所属栏目:编程 来源:Harvey
导读:一、媒介 最近常常遇到开拓误删除误更新数据,这不,他们又给我找了个贫困,我们来看下整个进程。 二、进程 因为开拓必要在出产环节中修复数据,必要执行120条SQL语句,必要将数据举办更新 于是开拓连上了出产数据库,起首执行了第一条SQL updatetablename

‘yyy’转化为浮点型为0,0和0较量恒便是1

  1. mysql [localhost] {msandbox} (test) > select 'yyy'+0.0;  
  2. +-----------+  
  3. | 'yyy'+0.0 |  
  4. +-----------+  
  5. |         0 |  
  6. +-----------+  
  7. 1 row in set, 1 warning (0.00 sec)  
  8. mysql [localhost] {msandbox} (test) > select 00=0;  
  9. +-----+ 
  10. | 00=0 |  
  11. +-----+  
  12. |   1 |  
  13. +-----+  
  14. 1 row in set (0.00 sec)  

这样导致功效恒创立,也就是 select 语句等价于以下 SQL

  1. select id,str_col from tbl_name where 11=1; 

将查询出全部的记录。

三、小结

在写SQL的进程中,必然要警惕引号的位置是否正确,偶然辰引号位置错误,SQL依然是正常的,可是却会导致执行功效所有错误。在执行前必需在测试情形执行测试,团结IDE的语法高亮发明响应的题目。

【编辑保举】

  1. 带你走近TiDB:一款开源NewSQL数据库
  2. MySQL数据库审计插件htp_audit正式开源,热璞科技回馈MySQL社区
  3. pydbgen:一个数据库随机天生器
  4. 从大神的角度深入领略MySQL,值得保藏~
  5. 监测数据库的康健和举动:有哪些重要指标?
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读