C# sql语句拼接时 like情况的防sql注入的用法

本文介绍了一种在C#中安全使用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注入的情况,还是挺简单实用。

 

是个小知识点,希望对你能有所帮助! ^_^

转载于:https://www.cnblogs.com/woaic/p/csharp_SqlParameter_like.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值