gpt4 book ai didi

当 field=0 时,mySQL 返回所有行

转载 作者:IT老高 更新时间:2023-10-28 23:54:46 24 4
gpt4 key购买 nike

我正在做一些测试,当我查询一个表时,我感到很惊讶,查询 SELECT * FROM table WHERE email=0 返回了表中的所有行。

此表没有“0”值,并且填充了常规电子邮件。

为什么会这样?这可能会导致严重的安全问题。

有没有办法在不修改查询的情况下避免这种情况?

我是不是漏掉了什么?

谢谢。

最佳答案

这是因为它将电子邮件字段(我假设它是一个 varchar 字段)转换为一个整数。任何没有有效整数的字段都将等于 0。您应该确保只将字符串字段与字符串值进行比较(日期也是如此,与日期进行比较)。查询应如下所示。

SELECT * FROM table WHERE email='0';

关于当 field=0 时,mySQL 返回所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7880936/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com