gpt4 book ai didi

MySQL 在不应该返回的情况下返回结果

转载 作者:行者123 更新时间:2023-11-29 23:52:28 26 4
gpt4 key购买 nike

我对此感到非常困惑。我们有一个 API key 表,创建 SQL 如下:

CREATE TABLE `api_keys` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`key` varchar(45) NOT NULL,
`ip` varchar(15) NOT NULL DEFAULT '',
`app` varchar(45) NOT NULL DEFAULT '',
`active` tinyint(1) DEFAULT NULL,
PRIMARY KEY (`key_id`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8;

我有两行,插入SQL如下:

INSERT INTO `api_keys` (`id`, `key`, `ip`, `app`, `active`)
VALUES
(1,'xxwxMKEkAHTcF9P3qQOOvfeuK0aMrd0GFLOoR3O6','10.0.0.1','Test App',1),
(2,'CeMbGnWO4aC4RuI7EJyZaNwidUI4nsEGEvgFNGzG','10.0.0.2','Test App 2',1);

当我运行以下查询时,我得到的结果应该是空的。实在是看不懂。

SELECT *
FROM `api_keys`
WHERE `ip` = '10.0.0.1'
AND `key` = 0
AND `active` = 1;

似乎当 0 作为键传递时,它会返回一条记录,这是不应该的。任何想法或建议都将感激不尽。 MySQL版本为5.6,运行在Ubuntu 12.10上

最佳答案

您应该尝试使用 null 值而不是 0

关于MySQL 在不应该返回的情况下返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25550817/

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