while(csmt.getMoreResults(CallableStatement.KEEP_CURRENT_RESULT)){
                                                                ^少一个括号 
  v.add(csmt.getResultSet());
                         ^^少两个括号
}

解决方案 »

  1.   

    用Oracle吗?如果是的话不需要这样吧
      

  2.   

    前面写的程序少了一个括号,现在加上去,但是这个括号不是
    引起这个问题的原因。Vector v = new Vector();
    v.add(csmt.getResultSet());
    while(csmt.getMoreResults(CallableStatement.KEEP_CURRENT_RESULT)){
      v.add(csmt.getResultSet);
    }这个方法执行后系统出现以下异常:
    java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseCallableStatement.getMoreResults(I)Z
    at app.dao.Example.main(Example.java:47)
    Exception in thread "main" 如果使用csmt.getMoreResults()的话,先前的结果集已经关闭了,请问有什么方法既可以获得所有的结果集,又不让他们关闭呢?
      

  3.   

    不是Oracle,而是sqlserver 2000
      

  4.   

    前面写的程序少了一个括号,现在加上去,但是这个括号不是
    引起这个问题的原因。Vector v = new Vector();
    v.add(csmt.getResultSet());
    while(csmt.getMoreResults(CallableStatement.KEEP_CURRENT_RESULT)){
      v.add(csmt.getResultSet());
    }这个方法执行后系统出现以下异常:
    java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseCallableStatement.getMoreResults(I)Z
    at app.dao.Example.main(Example.java:47)
    Exception in thread "main" 如果使用csmt.getMoreResults()的话,先前的结果集已经关闭了,请问有什么方法既可以获得所有的结果集,又不让他们关闭呢?