mysql> SELECT * FROM users; +----+---------+-------------+ | id | nick | password | +----+---------+-------------+ | 1 | admin | passwordzik | | 2 | ops | cant-tell | | 3 | nicczek | haselko | +----+---------+-------------+ 3 rows IN SET (0.00 sec) mysql> SELECT * FROM users WHERE nick = 'admin' AND password = 'cos' OR 1=1; +----+---------+-------------+ | id | nick | password | +----+---------+-------------+ | 1 | admin | passwordzik | | 2 | ops | cant-tell | | 3 | nicczek | haselko | +----+---------+-------------+ 3 rows IN SET (0.00 sec) mysql> SELECT * FROM users WHERE nick = 'admin' AND password = 'cos'; Empty SET (0.00 sec)
dlaczego klauzula or 1=1 dokonuje sie na calym zapytaniu zamiast tylko na czesci "password = 'cos' or 1=1;"?