今天下午同事問我一個比較基礎的問題,在拼接sql語句的時候,如果遇到Like的情況該怎么辦。
我原來的寫法就是簡單的拼接字符串,后來同事問我如果遇到sql注入怎么辦。我想了下,這確實是個問題。
剛在網上找了下相關的說明,原來是這樣寫的。
如這樣一個sql語句:
select * from game where gamename like '%張三%'
用c#表示的話:
string keyWords = "張三"; StringBuilder strSql=new StringBuilder(); strSql.Append("select * from game where gamename like @keywords"); SqlParameter[] parameters=new SqlParameter[] { new SqlParameter("@keywords","%"+keywords+"%"), };
這里雖然采用了仍然是用% 來寫,但是可以有效過濾sql注入的情況,還是挺簡單實用。
是個小知識點,希望對你能有所幫助! ^_^
新聞熱點
疑難解答