该代码段能正常显示所有记录,但按姓名查或按职称(下拉式列表)或按部门(下拉式列表)时均查不到记录,请问代码该如何修改呢?另外”修改“两个字怎么不是超链接的样式?      String sqlString=" ";
      String teacherName=request.getParameter("teacherName");
      String technicalPosition=request.getParameter("technicalPositionSelect");
      String department=request.getParameter("departmentSelect");
       
     
      if(request.getParameter("teacherName")!=null && request.getParameter("teacherName")!="") 
   {  
     sqlString=sqlString+ "and T_name='teacherName'";
   }
      if(request.getParameter("technicalPositionSelect")!=null&&request.getParameter("technicalPositionSelect")!="")
   {
       sqlString=sqlString + " and T_technicalposition='technicalPosition'";
   }
      if(request.getParameter("departmentSelect")!=null&&request.getParameter("departmentSelect")!="")
   {
       sqlString=sqlString + " and T_department='department'";
   }
  
ResultSet rs=db.executeQuery("select * from teacher "
                           +" where 1=1 "
                           +sqlString+" order by T_name desc "
        String teacherId="";
while(rs.next())
{

        teacherId=rs.getString("Id");
out.println("<tr height=22>");
out.println("<td align=center>"+rs.getString("T_name")+"</td>");
out.println("<td align=center>"+rs.getString("T_technicalposition")+"</td>");
out.println("<td align=center>"+rs.getString("T_department")+"</td>");
%>
<td align="center"<a href="teacherModify.jsp?teacherId=<%=teacherId%>">
修改</a>&nbsp;&nbsp;&nbsp;<a href="javascript:del('teacherManage.jsp',<%=teacherId%>)">删除</a></td></tr>
        }

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【hyxwxy】截止到2008-07-25 17:00:19的历史汇总数据(不包括此帖):
    发帖的总数量:15                       发帖的总分数:220                      每贴平均分数:14                       
    回帖的总数量:24                       得分贴总数量:2                        回帖的得分率:8%                       
    结贴的总数量:13                       结贴的总分数:200                      
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:2                        未结的总分数:20                       
    结贴的百分比:86.67 %               结分的百分比:90.91 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主加油
      

  2.   

    用LIKE试试吧
    超连接不要放TD里或者换下条件,这么写
    teacherName!=null&&teacherName.length()>0
      

  3.   

    <td align="center"<a href="teacherModify.jsp?teacherId=<%=teacherId%>">
    错了
    <td align="center"><a href="teacherModify.jsp?teacherId=<%=teacherId%>">修改</a>查不出来的原因是因为你这个sqlString初值是不是有个空格?所以最后的sql不正确了。
    你在执行前把这句SQL打出来看看,可能拼错了。dubug一下吧。还有楼主的头像挺不错,我喜欢,呵呵。
      

  4.   

    主要还是SQL的关系,你用一个String把它存一下,然后debug显示一个,看看这句SQL能不能运行。
    或者数据库中没有符合的记录。
      

  5.   

    空格去掉也不行,将String打出来看,是越来越长啊,最后成这个样子了  and T_name='teacherName' and T_name='teacherName' and T_technicalposition='technicalPosition' and T_name='teacherName' and T_technicalposition='technicalPosition' and T_department='department' 
      

  6.   

          String sqlString=" ";
          String teacherName=request.getParameter("teacherName");
          String technicalPosition=request.getParameter("technicalPositionSelect");
          String department=request.getParameter("departmentSelect");
                             
                        
          if(request.getParameter("teacherName")!=null && request.getParameter("teacherName")!="") 
              {     
                   sqlString=sqlString+ "and T_name='teacherName'";
              }
          if(request.getParameter("technicalPositionSelect")!=null&&request.getParameter("technicalPositionSelect")!="")
              {    
                  sqlString=sqlString + " and T_technicalposition='technicalPosition'";
              }
          if(request.getParameter("departmentSelect")!=null&&request.getParameter("departmentSelect")!="")
              {    
                  sqlString=sqlString + " and T_department='department'";
              }
        //你把这个sqlString的值复制下来放到你的数据库里去执行一下看看效果就知道了。
        sqlString = "select * from teacher where 1=1 " + sqlString + "orderby T_name desc";
        
        ResultSet rs=db.executeQuery(sqlString);
      

  7.   


          String sqlString="";
          String teacherName=request.getParameter("teacherName");
          String technicalPosition=request.getParameter("technicalPositionSelect");
          String department=request.getParameter("departmentSelect");
                             
                        
          if(request.getParameter("teacherName")!=null && request.getParameter("teacherName")!="") {     
                   sqlString=sqlString+ "and T_name='teacherName' ";
          }
          if(request.getParameter("technicalPositionSelect")!=null&&request.getParameter("technicalPositionSelect")!="") {    
                  sqlString=sqlString + "and T_technicalposition='technicalPosition' ";
          }
          if(request.getParameter("departmentSelect")!=null&&request.getParameter("departmentSelect")!="") {    
                  sqlString=sqlString + "and T_department='department' ";
          }    //你把这个sqlString的值复制下来放到你的数据库里去执行一下看看效果就知道了。
        sqlString = "select * from teacher where 1=1 " + sqlString + "order by T_name desc";
        
        ResultSet rs=db.executeQuery(sqlString);
    拿我这个试试看,呵呵。将结果告诉我。