有3个文本框 输入查询的条件 文本框的名字就是(B,RX,BJ)这三个文本框的值也就是条件,我写了一个SQL语句只能三个条件同时选中才能查询,我想让它选一个能查询选二个也能查询,应该怎么做,谢谢大家了if(B==null||B.trim().length()==0||RX==null||RX.trim().length()==0||BJ==null||BJ.trim().length()==0)
sqlString=new String("select * from ZC_XJGL");
else
if(RX==null||RX.trim().length()==0||BJ==null||BJ.trim().length()==0)
sqlString=new String("select * from ZC_XJGL where B='"+B.trim()+"'");
else
if(BJ==null||BJ.trim().length()==0)
sqlString=new String("select * from ZC_XJGL where B='"+B.trim()+"' or (RXF='"+RX.trim()+"')");
else
sqlString=new String("select * from ZC_XJGL where B='"+B.trim()+"' or (RXF='"+RX.trim()+"') or ( BJ='"+BJ.trim()+"')");
%>
sqlString=new String("select * from ZC_XJGL");
else
if(RX==null||RX.trim().length()==0||BJ==null||BJ.trim().length()==0)
sqlString=new String("select * from ZC_XJGL where B='"+B.trim()+"'");
else
if(BJ==null||BJ.trim().length()==0)
sqlString=new String("select * from ZC_XJGL where B='"+B.trim()+"' or (RXF='"+RX.trim()+"')");
else
sqlString=new String("select * from ZC_XJGL where B='"+B.trim()+"' or (RXF='"+RX.trim()+"') or ( BJ='"+BJ.trim()+"')");
%>
然后,你在判断if(RX==null||RX.trim().length()==0){
sql=sql+ "and b='"+rx+"';
}
这样就不用像你那样判断了。
sqlStr="";
if(B!=null && B.trim().length()>0)
sqlStr=sqlStr + or "B = " + B.trim();
if(RX!=null && RX.trim().length()>0)
sqlStr=sqlStr + or "RX = " + RX.trim();
if(BJ!=null && BJ.trim().length()>0)
sqlStr=sqlStr + or "BJ = " + BJ.trim();
if (!sqlStr.equals(""))
sqlString = sqlString + " where 1=1 " + sqlStr ;
<%
String sqlString="select * from ZC_XJGL where 1=1";
String B=codeToString(request.getParameter("B"));
String RX=codeToString(request.getParameter("RX"));
String BJ=codeToString(request.getParameter("BJ"));
if(B==null||B.trim().length()==0||RX==null||RX.trim().length()==0||BJ==null||BJ.trim().length()==0)
sqlString=sqlString;
else
if(RX==null||RX.trim().length()==0||BJ==null||BJ.trim().length()==0)
sqlString=sqlString+" and B='"+B.trim()+"'";
else
if(BJ==null||BJ.trim().length()==0)
sqlString=sqlString+ " and B='"+B.trim()+"' or RXF='"+RX.trim()+"'");
else
sqlString=sqlString+ " and B='"+B.trim()+"' or RXF='"+RX.trim()+"' or BJ='"+BJ.trim()+"'");
%>出现了这样的错误An error occurred at line: 47 in the jsp file: /1.jsp
Generated servlet error:
Syntax error on token ")", delete this tokenAn error occurred at line: 47 in the jsp file: /1.jsp
Generated servlet error:
Syntax error on token ")", delete this token
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
能帮我解决下么