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

Gemmer jdbc-datasættet alle rækker i jvm-hukommelsen

Det kommer an på. Forskellige drivere kan opføre sig forskelligt og anderledes ResultSet indstillinger kan opføre sig anderledes.

Hvis du har en CONCUR_READ_ONLY , FETCH_FORWARD , TYPE_FORWARD_ONLY ResultSet , vil driveren næsten helt sikkert aktivt gemme antallet af rækker i hukommelsen, der svarer til din hentestørrelse (selvfølgelig vil data for tidligere rækker forblive i hukommelsen i et stykke tid, indtil det er opsamlet skrald). Hvis du har en TYPE_SCROLL_INSENSITIVE ResultSet , på den anden side er det meget sandsynligt, at driveren ville gemme alle de data, der blev hentet, i hukommelsen for at give dig mulighed for at scrolle frem og tilbage gennem dataene. Det er ikke den eneste mulige måde at implementere denne adfærd på, så forskellige drivere (og forskellige versioner af drivere) kan have forskellig adfærd, men det er den enkleste og måden, som de fleste drivere, jeg er stødt på, opfører sig.



  1. Hvordan opretter man forbindelse til en LDAP-server ved hjælp af node-oracledb?

  2. Udfør fil med SQLExec indeholdende $$ tegn

  3. Brug af parametre med ADO Query (mysql/MyConnector)

  4. Docker-billede køres i m1-processor