2013/10/13

C#.Net MySQL Parameters

Parameters指的就是參數的意思,我們在撰寫MySQL的語法時,可能會像下面的語法一樣
string sql = "SELECT * FROM `test` WHERE account=" + account +" AND password=" + psw;

這種寫法很方便,但不容易偵錯,有可能SQL語法因為多了一個符號而錯誤
可以改用Parameters去避免這種問題,範例如下:

string sql = "SELECT * FROM `test` WHERE account=@account AND password=@password";
MySqlCommand cmd = new MySqlCommand(sql, conn);
cmd.Parameters.AddWithValue("account", "account");
cmd.Parameters.AddWithValue("password", "password");

透過Parameters設定的方式,更容易找到錯誤的語法在哪裡了


參考資料:
http://msdn.microsoft.com/zh-tw/library/w5zay9db.aspx
http://tw.newtonstudio.com/?p=63
http://wenwen.soso.com/z/q206062900.htm