组合查询 .net

发布网友

我来回答

2个回答

热心网友

新手,我就多说几句,让你这个问题问的值。

简单的sql语法问题:

1 textbox1为空, like '%%' 这个条件还是可以用的,就是搜索任何的(如果你这个名为datetime字段的类型允许用like搜的话)

2 而textbox2为空的话, and userid=后面就没了,这是一个错误的sql语句,执行就会出错,能搜出记录来才怪

解决办法:
首先,要根据textbox是否为空,来动态组合出sql语句字符串,比如,如果textbox1没填,那where后面就不加datetime like...这个条件了,如果两个textbox都没填,那就没有where和之后的了

其次,你要对textbox的内容进行检测后再拼接执行。这个太重要了。
否则,假设你的数据库是sqlserver,那我如果在textbox2里写上:

1;delete from list

那你的这个list表就被清空了,如果我更狠一点,干脆删表呢?甚至如果连接这个数据库的用户权限很高,直接调用系统存储过程运行系统命令,把你硬盘给格式化了,你怎么办?

热心网友

在textbox2.text右边少写了个% ,

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com