У меня есть Mysql (5.1.58-1ubuntu1) 'таблица' пользователей ( InnoDB механизм хранения, utf8 general ci сопоставление) с 3 полями (для простоты):
- id : int (первичный ключ)
- имя пользователя : varchar (255) - utf8_general_ci
- пароль : varchar (255) - utf8_general_ci
В этой таблице есть только две записи (всегда для простоты):
id| username | password
-----------------------
1 | myuser | custom1
2 | myuser2 | custom2
Итак, если я выполню этот запрос
select * from users where username = 0 and password = 0
mysql верните мне все записи.
Наоборот, если я выполню запрос ниже
select * from users where username = '0' and password = '0'
MySql вернет мне пустой набор.
На мой взгляд, это поведение очень странное и похоже на Hard Bug.
У кого-нибудь есть объяснения?