sql >> Database teknologi >  >> RDS >> Oracle

rs.last() giver ugyldig operation for kun at videresende resultatersæt:sidste

ResultSet.last() og andre "absolut indekserede" forespørgselsoperationer er kun tilgængelige, når resultatsættet er rulbart; Ellers kan du kun gentage én efter én gennem kun fremad resultatsæt.

Følgende eksempel (fra javadocs) viser, hvordan man opretter et rulbart ResultSet .

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

Husk, at der er præstationsimplikationer ved at bruge rulbare forespørgsler. Hvis målet med dette særlige ResultSet er kun for at få fat i dens sidste værdi. Overvej venligst at finjustere din forespørgsel for kun at returnere det resultat.



  1. Hvordan clock_timestamp() virker i PostgreSQL

  2. Hvad er række-, side- og tabellåse? Og hvornår er de erhvervet?

  3. Oprettelse af en trigger til kun at køre, når en ny tabel oprettes

  4. Vælg uden en FROM-klausul i Oracle