2017-06-08 44 views
3

當我測試下面的SQL查詢:爲什麼MySQL是不是辦案敏感案件

1. SELECT * FROM table WHERE username='username' AND password = 'password'; 

    2. SELECT * FROM table WHERE username='Username' AND password = 'Password'; 

兩個查詢返回即使用戶名和密碼是區分大小寫的

+0

你不應該,雖然存儲密碼明文。 – zerkms

回答

3

使用此查詢

相同的結果
SELECT * FROM table WHERE username='Username' AND binary password = 'Password'; 
3

對於區分大小寫的語法查詢

SELECT * FROM `table` WHERE BINARY `column` = 'value' 

在你的情況下,它會變成:

SELECT * FROM table WHERE BINARY username='Username' AND BINARY password = 'Password';