C# sql语句拼接时 like情况的防sql注入的用法
今天下午同事问我一个比较基础的问题,在拼接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注入的情况,还是挺简单实用。
是个小知识点,希望对你能有所帮助! ^_^
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。