假设有表 tb1

ID | name|

----+--------+

1 |2toon|

2 |1*xyz|

语句1:

select * from tb1 where ID='2toon' or name ='2toon';

mysql服务器在某模式下,可以执行这条句,就成功返回两条记录,原因在于 ID=‘2toon’ 加了单引号,mysql解释为 ID=2.

语句2

select * from tb1 where ID=2toon or name ='2toon';

此语句执行不了。

因此,想要得准确的查询结果,对int的字段一定要做判断与转类型。

转类型还可以防止SQL注入。

更多相关文章

  1. android应用如何在有需要时申请root权限?在程序中要调用哪些语句
  2. 封装底部dialog弹窗 adapter T类型的适配同种布局不同实体类
  3. Android 中文件类型与MIME的匹配表
  4. 错误:未使用的导入语句 - 导入android.widget.AdapterView.OnItem
  5. 如何执行删除请求而不返回类型或回调?(改造)
  6. 如何将Java中的类型与反射进行比较
  7. “checkout as maven project from scm”中缺少scm类型
  8. Spring Hibernate:没有类型为org.hibernate.SessionFactory的匹配
  9. java返回值是list的时候获取list的参数类型

随机推荐

  1. 十大经典排序算法动画与解析,看我就够了!(配
  2. 冰与火之歌:「时间」与「空间」复杂度
  3. SSH AKS集群节点的几种方法(一)
  4. 红帽 redhat 更改yum源为本地光盘(cdrom)
  5. android连续调用setVisibility(View.VISI
  6. 从Gartner 最新“客户之选”报告,看国内外
  7. 懵逼树上懵逼果:学习二分搜索树
  8. Android(安卓)清单目录application对应属
  9. 【春节特辑】神奇的二进制
  10. 程序员群体的性取向如何?Stack Overflow