2011-10-07 59 views
0

我已經編寫了應該從我的servlet調用MSSQL 2005過程的代碼。問題是程序是從表中選擇數據,所以我想要得到的ResultSet,但結果集永遠不會返回:(我測試過程與另一個程序,它的工作原理,此外,客戶端連接權限是dbowner所以應該沒有問題連接,但仍執行返回false :(MS SQL JDBC - SQLServerCallableStatement - execute()返回false

這裏的問題是代碼(當前連接連接我選中):

... 
    SQLServerCallableStatement callableStatement = null; 
    callableStatement = (SQLServerCallableStatement) connection.prepareCall(
         "{call "+ 
         DATABASE_NAME+ 
         "."+ 
         SCHEMA_NAME+ 
         ".select_item_proc(?,?,?)}"); 

         callableStatement.setInt(1, 0); 
       callableStatement.setString(2, "value1"); 
       callableStatement.setString(3, "value2"); 

      boolean rs=callableStatement.execute(); 

      if(rs) 
      { 
      ResultSet result=callableStatement.getResultSet(); 




       while (result.next()) { 

        String col1= result.getString(1); 
        String col2=result.getString(2); 
        System.out.print(col1+","); 
        System.out.println(col2); 


       } 


} 
... 

所以我需要你的新鮮景象是什麼問題真的可以任意?讚賞有用的評論

回答

2

請嘗試使用ResultSet rs = callableStatement.executeQuery();而不是boolean rs=callableStatement.execute();一行。

+0

謝謝...其實問題也是在params值,但executeQuery()幫助我 – user592704