Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come risolvere L'istruzione non ha restituito un errore del set di risultati?

Il fatto che il tuo programma non abbia sollevato alcuna eccezione significa che non avere risultati non è un'eccezione.

Puoi usare il metodo execute() del tuo CallableStatement. Il metodo execute restituirà un valore booleano che indica se esiste un ResultSet corrispondente all'esecuzione della tua richiesta.

Link al Javadoc:https://docs.oracle.com/javase/7/docs/api/java/sql/PreparedStatement.html#execute()

È ancora possibile ottenere ResultSet con il metodo getResultSet della super classe Statement:https://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#getResultSet()

Nel tuo caso, dovresti fare quanto segue:

boolean gotResults = myStmt.execute();
ResultSet rs = null;
if(!gotResults){
   System.out.println("No results returned");
} else {
   rs = myStmt.getResultSet();
}