C# ADO.NET中設置Like模糊查詢的參數


ADO.NET進行參數化時會自動將參數值包含在單引號中,除了特殊需求,最好不要自己手動添加單引號。ADO.NET中識別參數標識是使用符號@,如果在SQL語句中將參數標識放在單引號中,單引號中的參數標識只會被當成字符串!

所以要對LIKE語句進行參數化查詢時,就要先對參數值進行格式化,在傳參之前就設置好通配符,具體實現代碼如下:

string strSqlCommandText = "SELECT Title FROM Article WHERE Title LIKE @Title"; SqlParameter parameter = new SqlParameter() { ParameterName = "@Title", Value = "%ASP.NET MVC%", SqlDbType = SqlDbType.NVarChar, Size = 50 };

 

從上面的代碼中我們可以看到具體的變換有兩點,第一點是SQL語句中取消了通配符%並且參數標識沒有被單引號包含其中,第二點則是通配符直接放到了參數值中,這樣ADO.NET在進行參數化后所生成的SQL就完全沒問題了,最終也能正確的查詢出結果。


免責聲明!

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



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