使用參數化查詢來解決Access資料庫中特殊字元的資料插入問題
以下程式碼片段展示了使用OLE DB資料存取方法向Access資料庫插入資料。然而,當插入包含單引號的文字時,會出現問題。 參數化查詢可以有效解決這個問題。
使用參數更新程式碼
為了使用參數插入數據,需要對程式碼進行以下調整:
以下更新後的程式碼示範了參數的使用:
<code class="language-csharp">[WebMethod] public void bookRatedAdd(string title, int rating, string review, string ISBN, string userName) { using (OleDbConnection conn = new OleDbConnection( "Provider=Microsoft.Jet.OleDb.4.0;"+ "Data Source="+Server.MapPath("App_Data\BookRateInitial.mdb")); { conn.Open(); // DbCommand 也实现了 IDisposable 接口 using (OleDbCommand cmd = conn.CreateCommand()) { // 创建带有占位符的命令 cmd.CommandText = "INSERT INTO bookRated "+ "([title], [rating], [review], [frnISBN], [frnUserName]) "+ "VALUES(@title, @rating, @review, @isbn, @username)"; // 添加命名参数 cmd.Parameters.AddRange(new OleDbParameter[] { new OleDbParameter("@title", title), new OleDbParameter("@rating", rating), // ... 添加其余参数 }); // 执行 cmd.ExecuteNonQuery(); } } }</code>
透過使用參數,程式碼確保資料安全地插入,防止特殊字元造成的潛在問題,並維護資料完整性。
以上是參數化查詢如何解決Access資料庫中特殊字元的資料插入問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!