c#执行sql语句里面带有like查询的时候如何防止sql注入

#region/// 过滤html,js,css代码       /// <summary>       /// 过滤html,js,css代码       /// </summary>       /// <param name="html">参数传入</param>       /// <returns></returns>       public static string CheckStr(string html)       {           System.Text.RegularExpressions.Regex regex1 = new System.Text.RegularExpressions.Regex(@"<script[\s\S]+</script *>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           System.Text.RegularExpressions.Regex regex2 = new System.Text.RegularExpressions.Regex(@" href *= *[\s\S]*script *:", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           System.Text.RegularExpressions.Regex regex3 = new System.Text.RegularExpressions.Regex(@" no[\s\S]*=", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           System.Text.RegularExpressions.Regex regex4 = new System.Text.RegularExpressions.Regex(@"<iframe[\s\S]+</iframe *>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           System.Text.RegularExpressions.Regex regex5 = new System.Text.RegularExpressions.Regex(@"<frameset[\s\S]+</frameset *>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           System.Text.RegularExpressions.Regex regex6 = new System.Text.RegularExpressions.Regex(@"\<img[^\>]+\>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           System.Text.RegularExpressions.Regex regex7 = new System.Text.RegularExpressions.Regex(@"</p>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           System.Text.RegularExpressions.Regex regex8 = new System.Text.RegularExpressions.Regex(@"<p>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           System.Text.RegularExpressions.Regex regex9 = new System.Text.RegularExpressions.Regex(@"<[^>]*>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);           html = regex1.Replace(html, ""); //过滤<script></script>标记           html = regex2.Replace(html, ""); //过滤href=javascript: (<A>) 属性           html = regex3.Replace(html, " _disibledevent="); //过滤其它控件的on...事件           html = regex4.Replace(html, ""); //过滤iframe           html = regex5.Replace(html, ""); //过滤frameset           html = regex6.Replace(html, ""); //过滤frameset           html = regex7.Replace(html, ""); //过滤frameset           html = regex8.Replace(html, ""); //过滤frameset           html = regex9.Replace(html, "");           html = html.Replace(" ", "");           html = html.Replace("</strong>", "");           html = html.Replace("<strong>", "");           return html;       }       #endregion       #region  /// 过滤p /p代码       /// <summary>       /// 过滤p /p代码       /// </summary>       /// <param name="html">参数传入</param>       /// <returns></returns>       public static string InputStr(string html)       {           html = html.Replace(@"\<img[^\>]+\>","");           html = html.Replace(@"<p>","");           html = html.Replace(@"</p>","");           return html;       }       #endregion
时间: 2024-09-29 19:38:40

c#执行sql语句里面带有like查询的时候如何防止sql注入的相关文章

Orancle的SQL语句的多表查询和组函数

Orancle的SQL语句的多表查询和组函数一.SQL的多表查询:1.左连接和右连接(不重要一方加(+))SELECT e.empno,e.ename,d.deptno,d.dname,d.loc FROM emp e,dept d WHERE e.deptno(+)=d.deptno ;(+)在等号左边是右连接,反之左连接.2.交叉连接 (CROSS JOIN产生笛卡尔积)SELECT FROM emp CROSS JOIN dept ;3.自然连接 (NATURAL JOIN)自动关联字段匹

如何从页面SQL语句进行相关后台查询

前几天刚刚做了一个页面书写sql语句,到后台查询相关结果的案例,给大家分享一下.有不足之处请大家多指教!!! 一.页面:因为查询的表不固定,所以表格需要自助生成(这是利用了"jqGrid") 若是不利用"jqGrid"也可以参考方法2. 方法1. <div> <nobr> <div> <form method="get" action="/management/transactionFlow/i

SQL语句关于时间的查询小心得,希望大家给点意见

查询本月信息:Select * FROM T_Users Where datediff(month,RegisterTime,getdate())=0 昨天的信息:SELECT * FROM T_Users where LastLoginTime>DATEADD(DAY,-2,GETDATE()) AND LastLoginTime<GETDATE() SELECT SUM([DetailMoney]) FROM [dbo].[T_BuyDetails] INNER JOIN [dbo].[T

SQL语句--分组的Top查询

代码 SELECT A.* FROM ( SELECT ROW_NUMBER() OVER(PARTITION BY Host ORDER BY Host,count(EntranceURL) DESC) AS ROW, Host, EntranceURL as PageURL ,count(EntranceURL) as EnterTimes ,sum(CASE WHEN IsBounce=1 THEN 1 ELSE 0 END ) AS BounceTimes FROM UserLoyalt

hibernate中使用sql语句进行表链接查询,对结果集的遍历方法

今天做了一个在hibernate中使用sql语句进行表链接查询的功能,得到的属性是来自两个表中的字段.下面对结果集遍历的方法进行记录. sql语句不写了.部分代码如下: List<Course_Material> list = new ArrayList<Course_Material>(); @SuppressWarnings("rawtypes") List accountList = query.list(); if(accountList.size()&

通过带参数的Sql语句来实现模糊查询(多条件查询)

#region 通过带参数的Sql语句来实现模糊查询(多条件查询) StringBuilder sb = new StringBuilder("select * from books"); List<string> listWheres = new List<string>(); List<SqlParameter> listParams = new List<SqlParameter>(); if (txtBookName.Text.T

MyBatis中动态SQL语句完成多条件查询

http://blog.csdn.net/yanggaosheng/article/details/46685565 MyBatis中动态SQL语句完成多条件查询 <select id="queryEmp"  resultType="cn.test.entity.Emp"> select * from emp where 1=1 <if test="deptNo!=null"> and deptno=#{deptNO} &

python连接SQLServer数据库,执行给定的查询SQL语句,并返回查询结果数据

import sys import pymssql reload(sys) sys.setdefaultencoding("utf-8") #数据库连接配置 config_dict={ 'user':'sa', 'password':'', 'host':'127.0.0.1', 'database':'pawn2007' } def SQLServer_connect(config_dict): ''' SQLServer 数据库连接 ''' connect=pymssql.conn

SQL语句多表连接查询语法

一.外连接 1.左连接  left join 或 left outer join SQL语句:select * from student left join score on student.Num=score.Stu_id; 2.右连接  right join 或 right outer join SQL语句:select * from student right join score on student.Num=score.Stu_id; 3.完全外连接  full join 或 full