寻找一种更好的解决方案!!! 有五个(或者更多)框需要用户填入数据,但每个框用户都可以选择不填!然后根据用户填入的数据对数据库查询.根据排列组合的算法,五个框就有30种情况,最笨的方法就是用if语句对每个进行判断!现想看看各位有没有什么更好的方法了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 case的话也麻烦啊,还有没有其它办法? string sql = "select ... from ... where 1 = 1"; if( TextBox1.Text.Length > 0 ) sql = sql + " AND A='" + TextBox1.Text;if( TextBox2.Text.Length > 0 ) sql = sql + " AND B='" + TextBox2.Text;if( TextBox3.Text.Length > 0 ) sql = sql + " AND C='" + TextBox3.Text;if( TextBox4.Text.Length > 0 ) sql = sql + " AND D='" + TextBox4.Text;...让 AND 始终有效不就行了? 哈,上面拼接sql,写得有问题哈,每个后面都忘记写 + "'"; 了。 哪里需要30次...5个就5次够了........再说按排列组合应该是2的5次方是32吧..不是30.....楼主怎么算的?1个2种 --> 1 1 (填,不填)2个4种 ---> 1 2 13个8种 ---> 1 3 3 14个16种 --> 1 4 6 4 15个32种 --> 1 5 10 10 5 1............就算不会算总会看规律吧...... 如果你用户输入的都是字符串并且都是模糊查询...直接 like '%.........%' 其中....是输入内容,他输不输随便他...不过小心注入.呵呵 用个函数来判断是否像是注入语句,然后再like那样写 怎么实现点击动态无限菜单显示数据 updatepanel 里datagridview自带的刷新不起作用 TextBox修改时,检查其数值 关键字采集 用户控件拖到主页上时在设计视图上看起来乱七八糟? Visual Studio中关闭当前窗口的快捷键是什么? 初学ASP.net的第九个问题******(我要TreeView) 我的分数很少,还是想请教大虾门. 哪位网通用户帮我PING几个IP试下速度?100相送。 怎么样实现不弹出对话框,直接上传文件? datagrid分页时ITEM以固定宽度显示 动态生成的TABLE,怎样来设置单元格的宽度? 求助!!!!!
if( TextBox1.Text.Length > 0 )
sql = sql + " AND A='" + TextBox1.Text;
if( TextBox2.Text.Length > 0 )
sql = sql + " AND B='" + TextBox2.Text;
if( TextBox3.Text.Length > 0 )
sql = sql + " AND C='" + TextBox3.Text;
if( TextBox4.Text.Length > 0 )
sql = sql + " AND D='" + TextBox4.Text;
...让 AND 始终有效不就行了?
再说按排列组合应该是2的5次方是32吧..不是30.....楼主怎么算的?1个2种 --> 1 1 (填,不填)
2个4种 ---> 1 2 1
3个8种 ---> 1 3 3 1
4个16种 --> 1 4 6 4 1
5个32种 --> 1 5 10 10 5 1
............就算不会算总会看规律吧......
如果你用户输入的都是字符串并且都是模糊查询...直接 like '%.........%' 其中....是输入内容,他输不输随便他...不过小心注入.呵呵