為什么說Mysql預處理可以防止SQL注入


簡單點理解:prepareStatement會形成參數化的查詢,例如:

1

select * from A where tablename.id = ?

傳入參數'1;select * from B'如果不經過prepareStatement,會形成下面語句:

1

select * from A where tablename.id = 1;select * from B

這樣等於兩次執行,但如果經過預處理,會是這樣:

1

select * from A where tablename.id = '1;select * from B'

'1;select * from B'只是一個參數,不會改變原來的語法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM