首頁 >資料庫 >mysql教程 >如何解決過時的'MySqlCommand.Command.Parameters.Add”警告並防止 SQL 注入?

如何解決過時的'MySqlCommand.Command.Parameters.Add”警告並防止 SQL 注入?

Barbara Streisand
Barbara Streisand原創
2024-12-09 13:22:15396瀏覽

How to Resolve the Obsolete `MySqlCommand.Command.Parameters.Add` Warning and Prevent SQL Injection?

MySqlCommand.Command.Parameters.Add 過時警告:轉換為AddWithValue

問題:

使用MySqlCommand 將資料插入MySQL資料庫時,您會收到警告,指示「MySqlCommand.Command.Parameters.Add 已過時」且參數值未正確插入。如何解決此問題並確保 SQL 注入安全性?

答案:

要解決警告並改進 SQL 注入預防,您應該從使用“添加”過渡到“AddWithValue”以向 MySqlCommand 添加參數。

已修改程式碼:

...
command.Parameters.AddWithValue("@mcUserName", mcUserNameNew);
command.Parameters.AddWithValue("@mcUserPass", mcUserPassNew);
command.Parameters.AddWithValue("@twUserName", twUserNameNew);
command.Parameters.AddWithValue("@twUserPass", twUserPassNew);
...

其他注意事項:

  • 刪除SQL 語句中佔參數位符周圍的單引號:
string SQL = "INSERT INTO `twMCUserDB` (`mc_userName`, `mc_userPass`, `tw_userName`, `tw_userPass`) VALUES (@mcUserName, @mcUserPass, @twUserName, @twUserPass)";

以上是如何解決過時的'MySqlCommand.Command.Parameters.Add”警告並防止 SQL 注入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn