Oracle
 sql >> Base de données >  >> RDS >> Oracle

rs.last() donne une opération non valide pour le jeu de résultats avant uniquement :dernier

ResultSet.last() et d'autres opérations de requête "absolument indexées" ne sont disponibles que lorsque le jeu de résultats est scrollable; sinon, vous ne pouvez itérer qu'un par un à travers le forward-only jeu de résultats.

L'exemple suivant (issu des javadocs) montre comment créer un ResultSet déroulant .

Statement stmt = con.createStatement(
    ResultSet.TYPE_SCROLL_INSENSITIVE,
    ResultSet.CONCUR_READ_ONLY
);
ResultSet rs = stmt.executeQuery("SELECT a, b FROM TABLE2");

N'oubliez pas que l'utilisation de requêtes avec défilement a des conséquences sur les performances. Si l'objectif de ce ResultSet particulier est uniquement de saisir sa dernière valeur, veuillez envisager d'affiner votre requête pour ne renvoyer que ce résultat.