先试试看sql在分析器会不会出错!还有:
if (Rst.next()){
 fhd=Rst.getString("DATAK1_FHD");
String dgd=Rst.getString("DATAK1_DGD");}

解决方案 »

  1.   

    我有这样一个sql
    Rst2=vote.executeQuery("select count(*) from DATAK10_BYDJB where DATAK10_WXZBH like '%"+select+"%' and DATAK10_PFJG<>'0' and (DATAK10_PFJG<>'1' or DATAK10_PFJG is null)");
    Rst=vote.executeQuery("select * from DATAK10_BYDJB where DATAK10_WXZBH like '%"+select+"%' and DATAK10_PFJG<>'0' and (DATAK10_PFJG<>'1' or DATAK10_PFJG is null)");
    这样有合条件的也显示不出来,但也没有错误,
    但当我改了一下,
    Rst2=vote.executeQuery("select count(*) from DATAK10_BYDJB where DATAK10_WXZBH like '%"+select+"%'");
    Rst=vote.executeQuery("select * from DATAK10_BYDJB where DATAK10_WXZBH like '%"+select+"%'");
    它就报错,也是
    javax.servlet.ServletException: [Microsoft][ODBC SQL Server Driver]无效的描述符索引
    不知为什么???????
      

  2.   

    先不select * ...
    就select DATAK1_FHD ...行吗?
      

  3.   

    我这里只是写了一部分,要查的太多了,还是用select *好一点。
    我想不是这个原因。
      

  4.   

    那你用getXXX(i)取出来可以吗?
      

  5.   

    1、
    错误描述:无效的光标状态 
    错误可能原因: 没有rs.next()
    2、
    错误描述: 无效的描述符索引
    错误可能原因: 在没有设定结果集回滚的情况下,没有按顺序读取字段。
      

  6.   

    同意楼上的.JAVA中如果你statement没有定义成特定的参数是不能回滚的.