java.sql.SQLException:我的jsp页面中的游标状态无效

时间:2012-06-01 11:09:27

标签: jsp jdbc

我希望创建一个表,其中前3列是纯文本,但第4列是文本区域列,最后一列是下拉列表列。 这些表单元素中给出的所有输入都将被发送到一个单独的jsp页面,其中iit将在数据库中更新。 这是我写的代码

    <form name="input" action="UpdateSMCFO.jsp" method="post">

    <table>
    <tr>
    <th>Dist. Code</th>
    <th>Cons. No.</th>
    <th>Consumer Details</th>
    <th>Verification by FO</th>
    <th>Remarks by SO</th>

    </tr>
    <%
    int r=0;
    while (rs.next()) {r++;
                   }
    for(int j=0;j<r;j++)
                   {
    out.println("<TR>");
    for (int i = 0; i < columnCount; i++) {
    if(i>=0 && i<=2)
    {
        out.println("<TD>"+rs.getString(i+1)+"</TD>");
    }
    else if(i==3)
    {
    out.println("<TD><input type=\"text\" name=\"FOVerification\""+String.valueOf(j)+"/></TD>");
    }
    else
    {
        out.println("<TD><select name=\"SORemarks\""+String.valueOf(j)+">");
        out.println("<option value=\"Please Specify\">Please Specify</option>");
        out.println("<option value=\"Genuine Customer\">Genuine Customer</option>");
        out.println("<option value=\"MC\">MC-To be blocked</option>");
        out.println("</select></TD>");
    }
    }              
    out.println("</TR>");

                  }
%>
</table>
 <input type="submit" value="Submit" />

 </form>

我非常确定这不是处理表格元素的方法,但这是我能想到的。 请在jsp和html的范围内给我任何想法。 现在,我一周前才开始学习jsp,所以我对这些概念很新。

这是堆栈跟踪:

输入例外报告

消息

description服务器遇到内部错误(),导致无法完成此请求。

例外

javax.servlet.ServletException:java.sql.SQLException:[Microsoft] [ODBC驱动程序管理器]无效的游标状态

1 个答案:

答案 0 :(得分:0)

得到了它! 我只是试图用异常的名称来理解它:无效的游标状态..

所以我的sql游标状态在第34行无效!

将其更改为:

    while (rs.next()) {

    out.println("<TR>");
    for (int i = 0; i < columnCount; i++) {
    if(i>=0 && i<=2)
    {
        out.println("<TD>"+rs.getString(i+1)+"</TD>");
    }
    else if(i==3)
    {
    out.println("<TD><input type=\"text\" name=\"FOVerification\""+String.valueOf(r)+"/></TD>");
    }
           else if(i==4)
    {
        out.println("<TD><select name=\"SORemarks\""+String.valueOf(r)+">");
        out.println("<option value=\"Please Specify\">Please Specify</option>");
        out.println("<option value=\"Genuine Customer\">Genuine Customer</option>");
        out.println("<option value=\"MC\">MC-To be blocked</option>");
        out.println("</select></TD>");
    }
    }
    out.println("</TR>");
    r++;
                  }

它有效! :)