MySQL запрос не возвращает соответствующие данные, несмотря на существующие данные - PullRequest
0 голосов
/ 30 сентября 2018

Это моя база данных

enter image description here

, когда я запускаю запрос

SELECT * 
FROM `users` 
WHERE 'username'= 'abc' && 'password' = 'abc'

Я получаю:

MySQL вернул пустой набор результатов (т. Е. Ноль строк)

Однако имя пользователя abc и пароль abc присутствует вмоя база данныхПочему MySQL возвращает ноль строк?

1 Ответ

0 голосов
/ 30 сентября 2018

Причина в том, что вы добавили " к имени вашего столбца

'username'= 'abc' && 'password' = 'abc'

Если вы выполните ниже sql, вы увидите, что результат выбора равен 0

SELECT 'username'= 'abc' && 'password' = 'abc';

+-----------------------------------------+
| 'username'= 'abc' && 'password' = 'abc' |
+-----------------------------------------+
|                                       0 |
+-----------------------------------------+

1 row in set (0.00 sec)

Такваш текущий sql эквивалентен

SELECT * FROM `users` WHERE 0;

, поэтому ваш sql вернет 0 результатов;


Чтобы заставить его работать, вам нужно изменить " на `

SELECT * FROM `users` WHERE `username`= 'abc' AND `password` = 'abc'

или просто удалите " в названии столбца

SELECT * FROM `users` WHERE username= 'abc' AND password = 'abc'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...