各位老師﹐請問﹐為什么我的以下代碼的conn.rollback();會出錯﹖
public  boolean exeQuery(ArrayList List)
{
    boolean flag = false;
    String sql = ""; 
    try {
     conn.setAutoCommit(false);
Statement   stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
for(int i=0; i < List.size(); i++)
{
          sql = (String) List.get(i);
  stmt.execute(sql);
}
conn.commit(); 
conn.setAutoCommit(true);
flag = true;

    catch (SQLException e)
    {
     conn.rollback();
e.printStackTrace();
flag = false;
    }
    return flag;
}謝謝了﹗

解决方案 »

  1.   

    conn离开了作用域把错误信息发下
      

  2.   

    试下改两个部分:
    1.
    把Statement  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); 
    改成
    Statement stmt = con.createStatement();
    2.去掉  conn.setAutoCommit(true); 
      

  3.   

    1 樓的朋友﹐在Eclipse運行時的錯誤如下﹐但就是在JAVA中﹐不用運行也可以看到一個紅點的報警﹕
    2008/12/27 上午 11:22:10 org.apache.catalina.core.StandardWrapperValve invoke
    嚴重的: Servlet.service() for servlet jsp threw exception
    java.lang.Error: Unresolved compilation problem: 
    Unhandled exception type SQLException at dbopen.openDb.exeQuery(openDb.java:87)
    at org.apache.jsp.NewIA.IA_005fsubmit_jsp._jspService(IA_005fsubmit_jsp.java:299)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
    at java.lang.Thread.run(Unknown Source)
      

  4.   

    conn.rollback();也要进行异常处理