Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Co i kiedy należy określić setFetchSize()?

Powinieneś przeczytać tę stronę z oficjalnych dokumentów na temat zestawów wyników . Mówi

Domyślnie zestawy wyników są całkowicie pobierane i przechowywane w pamięci. W większości przypadków jest to najbardziej wydajny sposób działania, a ze względu na konstrukcję protokołu sieciowego MySQL jest łatwiejszy do wdrożenia. Jeśli pracujesz z zestawami wyników, które mają dużą liczbę wierszy lub duże wartości i nie możesz przydzielić miejsca na stercie w JVM na wymaganą pamięć, możesz nakazać sterownikowi przesyłanie strumieniowe wyników z powrotem do jednego wiersza na raz.

stmt = conn.createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY,
                            java.sql.ResultSet.CONCUR_READ_ONLY);
stmt.setFetchSize(Integer.MIN_VALUE);

Kombinacja zestawu wyników tylko do przodu i tylko do odczytu z rozmiarem pobierania Integer.MIN_VALUE służy jako sygnał dla sterownika do strumieniowego przesyłania zestawów wyników wiersz po wierszu. Następnie wszystkie zestawy wyników utworzone za pomocą instrukcji będą pobierane wiersz po wierszu.

W efekcie ustawienie tylko fetchSize nie ma wpływu na implementację łącznika-j.



  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 PL/SQL — wskazówki dotyczące natychmiastowego wydruku / drukowania z konsoli

  2. Jak dodać wiodące zero do liczby w zapytaniu Oracle SQL?

  3. Dzielenie ciągu na wiele wierszy w Oracle

  4. Uzyskiwanie uchwytu do natywnego połączenia Oracle w Hibernate 4 w celu uruchomienia przechowywanego procesu

  5. PLS-00103:Napotkałem symbol CREATE