做一个模糊查询,数据库链接类没问题,在其他页面使用都可以查询得到,key的值接收得到,sql语句输出后我拿到sql server 2000的查询分析器执行成功并有数据出来,但页面就是没显示正确的,结果没显示出来,页面也只有一半,断句发现时在while循环里面有错误,但我找半天就是找不出哪里错了。各位大大帮我看看,感激不尽,谢谢了。关键代码如下: 
<%@ page import="javabean.connDB" %>  <%
String key=new String(request.getParameter("searchkey").toString().getBytes("ISO-8859-1"),"GB2312");
connDB conn=new connDB();
String sql="select Tname,Tprice,Tpicture,Tnumber,Tid from tea where Tname like '%"+key+"%' or Tkind like '%"+key+"%' ";
out.print(sql);
ResultSet rs_new=conn.executeQuery("sql");
while(rs_new.next()){
String Tname=rs_new.getString(1);
float Tprice=rs_new.getFloat(2);
String Tpicture=rs_new.getString(3);
int Tnumber=rs_new.getInt(4);
int Tid=rs_new.getInt(5);
 %>
     <table width="611" border="0"  cellpadding="0" cellspacing="2">
       <tr>
         <td width="251" height="90"><a href="shangpinxx.jsp?Tid=<%=Tid%>"><%=Tpicture%></a></td>
       </tr>
       <tr>
         <td>商品名:<a href="shangpinxx.jsp?Tid=<%=Tid%>"><%=Tname%></a></td>
       </tr>
       <tr>
         <td>价格:<%=Tprice%>元/一斤</td>
       </tr>
       <tr>
         <td height="28">库存:<%=Tnumber%></td>
       </tr>
       <tr>
         <td height="20" colspan="2" align="left" bordercolor="#CCCCCC">
<a href="shangpinxx.jsp?Tid=<%=Tid%>"><img src="images/gm.gif" width="80" height="25" border="0"/></a>
<a href="shoucangx.jsp?Tid=<%=Tid%>"><img src="images/shc.gif" width="80" height="25" border="0" /></a>
         </td>
       </tr>
      </table>
       <%

%>
数据库里面的数据类型:
列名      数据类型     长度    允许空
Tid         int          4      非空
Tname     varchar       50      非空
Tprice     float         8
Tpicture  varchar       100      
Tnumber     int          4

解决方案 »

  1.   

    这个页面真直接,直接访问数据库了
    ResultSet rs_new=conn.executeQuery("sql");
    sql的引号
      

  2.   

    字符串的应该不会错,错应该是错在数字类型吧。因为数字类型int像这样,如果在数据库中是空的吧。则在java代码中用:int Tnumber=rs_new.getInt(4);
    可能会报空指针异常