C#使用带like的sql语句时防sql注入的方法
程序员文章站
2023-12-17 12:30:58
本文实例叙述了在拼接sql语句的时候,如果遇到like的情况该怎么办。
一般采用带like的sql语句进行简单的拼接字符串时,需要开率遇到sql注入的情况。这确实是个需要...
本文实例叙述了在拼接sql语句的时候,如果遇到like的情况该怎么办。
一般采用带like的sql语句进行简单的拼接字符串时,需要开率遇到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注入的情况,还是挺简单实用。
相信本文所述对大家构建更安全的c#数据库程序有一定的借鉴作用。