Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Gdzie zestaw wyników jest przechowywany podczas pracy z jdbc i sterownikiem Oracle

Do pamięci lokalnej zostanie pobrana domyślna liczba wierszy (nie cały zestaw wyników). Po dotarciu do ostatniego wiersza pobranych wierszy (powiedzmy, wykonując next() i próbując uzyskać dostęp do następnego wiersza) i jeśli w wyniku jest więcej wierszy, zostanie wykonane kolejne wywołanie w obie strony do bazy danych, aby pobrać następny partia wierszy.

EDYCJA 1:

Możesz zobaczyć, ile wierszy jest pobieranych jednocześnie przez Twój zestaw wyników, wykonując to (zweryfikuj składnię):

rs.beforeFirst(); // will put cursor before the first row
rs.last(); // will put cursor after the last line
int noOfRows = rs.getRow(); // will give you the current row number

EDYCJA 2:

Jeśli chcesz uzyskać więcej wierszy w pamięci lokalnej niż zwykle, możesz rozważyć CachedRowSet . Nawet to spowoduje podróże w obie strony, ale generalnie mniej niż normalny zestaw wyników. Jednak powinieneś rozważyć wykonanie pewnych testów wydajności dla swoich aplikacji.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wstaw tę samą stałą wartość do wielu wierszy

  2. Implementacja odległości Levenshteina dla wyszukiwania mysql/fuzzy?

  3. zmień status harmonogramu zdarzeń w mysql

  4. Grupowanie wielu instrukcji Mysql w celu pobrania liczby wielu statusów

  5. Dlaczego `log_slow_queries` łamie `my.cnf`?