rsOpen "select sum(nGDYF),sum(nSuttleWeight),sum(nPM_Amount),sum(nMZ_Amount) from PurchaseZM where sGrade= " & VAL(TEXT9TEXT) & " AND convert(varchar(8),cast(sScaleDate as datetime),112) between '" & Text1Text & "' and '" & Text2Text & "'", cnn, adOpenDynamic, adLockBatchOptimistic
你这样做输出SS语句调试看看,你会发现你输出的SQL语句有问题!
String ss="SELETE FROM MESSAGE WHERE";
int i=1;char c='"';
if(na!=null)
{ss=ss+"AND 姓名='"+na+"'";i=0;
Systemoutprintln(ss);
}
if(se!="")
{
if(i==0){ss=ss+"AND 性别='"+se+"'";i=0;}
else {ss=ss+"AND 性别='"+se+"'";i=1;}
}
if(xi!="")
{
if(i==0){ss=ss+"AND 系别='"+xi+"'";i=0;}
else {ss=ss+"AND 系别='"+xi+"'";i=1;}
}
if(zh!="")
{
if(i==0){ss=ss+"AND 专业='"+zh+"'";i=0;}
else {ss=ss+"AND 专业='"+zh+"'";i=1;}
}
if(ni!="")
{
if(i==0){ss=ss+"AND 年级='"+ni+"'";}
else {ss=ss+"AND 年级='"+ni+"'";}
}
ss=c+ss+c;
rs=sqlexecuteQuery(ss);
就拿第一个SQL语句来做示范,加入你的na值为abc,输出的SS是 SELETE FROM MESSAGE WHEREAND 姓名= 'abc'
仔细一看就知道SQL语句上很严重的错误 WHERE 后面接了AND关键词
可以这样改:ss=ss+" " + "姓名='"+na+"'" +" " +"AND";
最后使用replaceAll('AND$', ")") 替换最后一个AND字符穿。或者使用字符创截取 去掉最后三个字符(AND)
查询语句会写不?
给你提供思路 代码自己写
先把所有的数据读出来放在datatable中,读数据的时候用用你定义的适配器,就是dataadapter,然后datagridview中加载这些数据,就一句话 datagridviewdatasouce=datatable;然后再给你的第三个textbox定义值改变事件,就是textBoxValueChanged事件,当值更改后,再执行你的查询语句,不过此时是有条件的,在select from 表2后面加Where 机构代码=你的第三个textbox的值,然后把datagridview清空,重新加载。这样就ok了,很详细了。代码自己写,很久没接触VB,不会写了。
`
主要就是在where后后使用and逻辑运算符
如:
select from [表名] where 学校='清华大学' and 住址='北京' and 性别='男'
以上为查询,清华大学,住址为北京的所有男性的信息
还可以使用用模糊查询
如:
select from [表名] where 学校 like '%清华大学%' and 住址 like '%北京%' and 性别='男'
以上为查询学校有清华两字,住址中有北京两字的所有男性的信息
要是回答的内容有问题,或认为不妥,请发送百度消息给我,消息内容加上本页网址哦。。
·
以上就是关于VB如何多条件查询数据全部的内容,包括:VB如何多条件查询数据、Java中数据库实现多条件查询(条件是不确定的,可以是一个,两个,三个,四个,五个)!、关于vs多条件查询数据库代码的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)