Oracle
 sql >> база данни >  >> RDS >> Oracle

rs.last() дава невалидна операция само за препращане на резултати:last

ResultSet.last() и други "абсолютно индексирани" операции на заявка са налични само когато резултатният набор е с възможност за превъртане; в противен случай можете да повторите само едно по едно чрез само напред набор от резултати.

Следният пример (от javadocs) демонстрира как да създадете превъртащ ResultSet .

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

Имайте предвид, че използването на заявки с възможност за превъртане има последици за производителността. Ако целта на този конкретен ResultSet е само за да вземете последната й стойност, моля, помислете за прецизиране на заявката си, за да върне само този резултат.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle SQL Developer 21.4.2 и SQLcl 21.4.1 вече са налични

  2. Клиент на Oracle ORA-12541:TNS:няма слушател

  3. Времето за изчакване за метода OracleDataReader.Read

  4. Времето за изчакване на връзката за DriverManager getConnection

  5. Проблем с периодично свързване на Oracle JDBC