建议直接拼接sql字符串,比如:
sql="select * from table1 where aa=1"
....
if (...)
sql2="and bb=2"
.....
sql=sql+sql2
这样写是至少有一个已知条件,也可以是至少有一个任意条件,思路是一样的,代码比上面的稍微复杂点。
sql="select * from table1 where aa=1"
....
if (...)
sql2="and bb=2"
.....
sql=sql+sql2
这样写是至少有一个已知条件,也可以是至少有一个任意条件,思路是一样的,代码比上面的稍微复杂点。
解决方案 »
- 模态对话框也可以失去焦点?
- 由数据库字段生成类的属性
- 求 C# 用 console 打开图片或者浏览图片方法
- Grid按列排序
- 遇到了这么个问题,SQL语句是对的,怎么就FILL不了呢?
- 熟悉 DataGrid 的请指点——关于定制 DataGrid 的问题,急用!!!
- w32.hllw.gaobot 我服你了!!! (我又来C#向大家请教了)
- 请教高手,关于显示数据报表的问题
- 请教一个问题,谢谢。
- 有谁能分析一下anchor和dock属性的区别?我有点明白又不是很清楚。
- 测试FTP站点,通与否麻烦回帖说明一下!
- 无法创建C# web应用程序(错误:web访问失败)——请教高手,我已经穷途末路了啊!!!
怎样使不输入任何信息的项无效
SELECT FROM 表 where 项1=@项1 and 项2=@项2
为什么使一项等于"%"查询不到?
==========================================================
如果textbox为空,直接去掉该textbox相关的判断StringBuilder strsql=new StringBuilder("SELECT FROM 表 where 1=1 ");
if (textbox1.text!="")
{
strsql.Append("and 项1=@项1 ");
}
第二,最好使用传参数的方法,虽然烦一点,但可以防止非法字符问题,而且,可以免去程序SQL漏洞