sql >> Databáze >  >> RDS >> Oracle

rs.last() dává Neplatnou operaci pro forward only resultset:last

ResultSet.last() a další „absolutně indexované“ operace dotazu jsou dostupné pouze tehdy, když je sada výsledků posouvatelná; jinak můžete iterovat pouze jeden po druhém prostřednictvím pouze vpřed sada výsledků.

Následující příklad (z javadocs) ukazuje, jak vytvořit rolovací ResultSet .

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

Mějte na paměti, že používání rolovatelných dotazů má vliv na výkon. Pokud je cílem tohoto konkrétního ResultSet slouží pouze k získání jeho poslední hodnoty, zvažte prosím upřesnění dotazu tak, aby vrátil pouze tento výsledek.



  1. Instalace Perl DBD::Oracle Module

  2. Jak nastavit replikaci MySQL v RHEL, Rocky a AlmaLinux

  3. Jak mohu urychlit row_number v Oracle?

  4. Jak opravit „Seznam výběru pro příkaz INSERT obsahuje méně položek než seznam vložení“