因此,在我的程序中,我可能在不同的地方有50個左右的文本框。我知道如何用某些東西替換單引號(在這種情況下是' - > \'),但我認爲必須有更好的方式來完成此操作,併爲每個文本框添加特定的代碼。我必須這樣做,因爲當這些東西被髮送到數據庫時,如果有一個單引號,它會給出一個錯誤。有沒有辦法改變默認的TextBox控件行爲,以便程序中的所有文本框都自動用\'替換所有單引號?用我的程序中的所有文本框替換'with'
編輯:
string statement = "select count(*) from users where username='@username'";
MySqlCommand command = new MySqlCommand(statement, conn);
command.Parameters.AddWithValue("@username", username);
if (Convert.ToInt32(command.ExecuteScalar()) == 1)
我一直在玩的paramerterized代碼,這就是我現在所擁有的。從我的理解來看,語句字符串與以前基本相同,但是我曾經有過使用參數(我稱爲@username)的變量「username」,然後創建該命令。然後在parameters.addwithvalue中,它將用參數username替換變量username中的任何值。不幸的是,這不適合我,我真的不明白它有什麼用處,因爲用戶名仍然只是在命令中卡住了?
編輯:發現問題,在聲明中,你不需要把周圍「@用戶名」
所以單引號,應該是:
string statement = "select count(*) from users where [email protected]";
我編輯了我的文章,請你再看一遍。我不確定如何有效地在這些評論中發佈代碼,所以我只是把它放在那裏。 – zack 2010-11-26 23:20:40
謝謝。你幫了我一噸:D – zack 2010-11-26 23:44:19