List<SqlParameter> paras = new List<SqlParameter>();
string wherSql = PreWhereSQL + GetQuerySql(paras); string GetQuerySql(List<SqlParameter> paras)
{
StringBuilder where = new StringBuilder(" and 1=1");
if (!string.IsNullOrEmpty(tbWorkOrderNo.Text.Trim()))
{
where.Append(" and SgWorkOrderNo like @p_SgWorkOrderNo");
paras.Add(new SqlParameter("@p_SgWorkOrderNo", "%" + tbWorkOrderNo.Text.Trim() + "%"));
}
if (!string.IsNullOrEmpty(tbTitle.Text.Trim()))
{
where.Append(" and Title like @p_tbTitle");
paras.Add(new SqlParameter("@p_tbTitle", "%" + tbTitle.Text.Trim() + "%"));
}
if (!string.IsNullOrEmpty(ddlCity.SelectedValue))
{
where.Append(" and CityName = @p_CityName");
paras.Add(new SqlParameter("@p_CityName", ddlCity.SelectedValue));
}
if (!string.IsNullOrEmpty(ddlBussinessAttr.SelectedValue))
{
where.Append(" and ProductID = @p_ProductID");
paras.Add(new SqlParameter("@p_ProductID", ddlBussinessAttr.SelectedValue));
}
if (!string.IsNullOrEmpty(tbStartTimeS.Text.Trim()))
{
where.Append(" and JieSuanStartTime >= @p_JieSuanStartTimeS");
paras.Add(new SqlParameter("@p_JieSuanStartTimeS", tbStartTimeS.Text.Trim()));
}
if (!string.IsNullOrEmpty(tbStartTimeE.Text.Trim()))
{
where.Append(" and JieSuanStartTime <= @p_JieSuanStartTimeE");
paras.Add(new SqlParameter("@p_JieSuanStartTimeE", tbStartTimeE.Text.Trim()));
}
if (!string.IsNullOrEmpty(ddlCheckStatus.SelectedValue))
{
where.Append(" and JieSuanStatus = @p_JieSuanStatus");
paras.Add(new SqlParameter("@p_JieSuanStatus", ddlCheckStatus.SelectedValue));
}
return where.ToString();
} 这个是有前置查询条件的,所有where的初始值为 and =

SQL带参数拼接的更多相关文章

  1. hibernate log4j2输出sql带参数

    网上有很多是输出sql ,参数以?的形式,后面输出参数binding的log,还要自己拼接特别麻烦:这里整理下输出原生sql的方法.组件是log4jdbc 1: 修改pom.xml,确定有下面的配置, ...

  2. PYTHON 中 SQL 带参数

    使用 PYTHON 的字符串填充方式 import mysql.connector sql = 'select \* from school.student where age > {age} ...

  3. springMVC带参数请求重定向

    SpirngMVC返回逻辑视图名 可以分下面几种情况: 1. servlet进行请求转发,返回到jsp页面,如  return "index.jsp" ; 2. servlet 返 ...

  4. .Net ADO拼接带参数的SQL语句

    首先是在DAL数据访问层中的代码://数据更新的方法public static int shuxing_update(s_passnature model) { string sql = " ...

  5. 执行带参数的sql字符串

    --要传入的参数 declare @Rv NVARCHAR(40) --要执行的带参数的sql字符串 declare  @sql nvarchar(max) set @sql='select * fr ...

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

    #region 通过带参数的Sql语句来实现模糊查询(多条件查询) StringBuilder sb = new StringBuilder("select * from books&quo ...

  7. Sql Server 带参数的存储过程执行方法

    Sql Server 带参数的存储过程执行方法 Visual C# 动态操作 SQL Server 数据库实例教程(4):带参数的存储过程执行方法 上一篇文章介绍了带参数的SQL语句执行方法和不带参数 ...

  8. .net带参数SQL语句的完整定义

    首先是在DAL数据访问层中的代码://数据更新的方法public static int shuxing_update(s_passnature model) { string sql = " ...

  9. c# 防止sql注入对拼接sql脚本的各个参数处理

    调用方法:GameServerId = this.NoHtml(GameServerId);//GameServerId为一个拼接sql的参数 /// <summary> /// 过滤标记 ...

随机推荐

  1. 【POJ1743】 Musical Theme (二分+后缀数组)

    Musical Theme Description A musical melody is represented as a sequence of N (1<=N<=20000)note ...

  2. 李洪强iOS开发之-环信02.1_环信 SDK 2.x到3.0升级文档

    李洪强iOS开发之-环信02.1_环信 SDK 2.x到3.0升级文档 SDK 2.x 至 3.0 升级指南 环信 SDK 3.0 升级文档 3.0 中的核心类为 EMClient 类,通过 EMCl ...

  3. CRC算法及C实现

    一.CRC算法原理   CRC校验的基本思想是利用线性编码理论,在发送端根据要传送的k位二进制码序列,以一定的规则产生一个校 验用的监督码(既CRC码)r位,并附在信息后边,构成一个新的二进制码序列数 ...

  4. Knockout绑定audio的pause事件导致音频无法停止

    ...时间过得真快, 一晃4天已经过去了, 然而自己并没有动笔写什么. 自省. 看了看今天的工作, 感觉好像没什么可写的. 不禁在想是不是一天一篇有点儿难. 再一想, 这分明就是在给自己找理由. 就是 ...

  5. Android ---时间工具类

    public class DateUtil { // protected static Log logger = LogFactory.getLog(DateUtil.class); // 格式:年- ...

  6. HDU 5936 Difference 【中途相遇法】(2016年中国大学生程序设计竞赛(杭州))

    Difference Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total ...

  7. QT更改程序图标

    方法只要几个步骤就好了,如下: 1.准备好一个ico格式的图标文件,例如demo.ico 2.创建一个rc文件, 例如demo.rc. 并copy下面代码: // Generated by ResEd ...

  8. KEIL、uVision、RealView、MDK、KEIL C51区别比较

    KEIL uVision,KEIL MDK,KEIL For ARM,RealView MDK,KEIL C51,KEIL C166,KEIL C251 从接触MCS-51单片机开始,我们就知道有一个 ...

  9. Unity优化之纹理集

    发现了一个比较好用的插件:ProDrawCallOptimizer. 它是用来合并纹理和材质的,而且用起来非常简便. 操作方法: 1.将包拖入Unity5中:ps:由于版本问题,直接双击包时导入不了 ...

  10. GPGPU OpenCL/CUDA 高性能编程的10大注意事项

    转载自:http://hc.csdn.net/contents/content_details?type=1&id=341 1.展开循环 如果提前知道了循环的次数,可以进行循环展开,这样省去了 ...