sql >> Database >  >> RDS >> Sqlserver

Hoe op te lossen De verklaring heeft geen resultaatsetfout geretourneerd?

Het feit dat je programma geen uitzondering heeft gemaakt, is dat geen resultaten hebben geen uitzondering is.

U kunt de methode execute() van uw CallableStatement gebruiken. De execute-methode retourneert een boolean die aangeeft of er een ResultSet was die overeenkomt met de uitvoering van uw verzoek.

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

U kunt de ResultSet nog steeds verkrijgen met de methode getResultSet van de superklasse Statement:https://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#getResultSet()

In jouw geval zou je het volgende doen:

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


  1. Heeft string of int de voorkeur voor externe sleutels?

  2. Alle rijen ouder dan 5 dagen verwijderen

  3. Query uitvoeren met een instructie in een VARCHAR2-kolom

  4. SQL:Telling krijgen uit veel tabellen voor een gebruikersrecord in de USER-tabel. Wat is de beste aanpak?