ich die SPRING jdbcTemplate bin mit dem folgenden Code einige Daten aus meiner DB extrahieren mit:Jdbctemplate.query() Auswahlprozess einer Auswahlabfrage (Spring-Framework) mit
jdbctemplate.query(SELECT_SQL_QUERY, new RowCallbackHandler(){
public void processRow(resultsetRS) throws SQLException{
// Some operations here
}
});
Wenn ich eine Auswahl Frage: Ich möchte wissen, ob diese Methode jdbctemplate.query()
alles aus der Datenbank lädt, bevor die Daten verarbeitet werden oder Zeilen nacheinander geladen werden?
ich die Antwort brauche, weil ich bin mit zwei SELECT
Abfragen und die zweite ist abhängig von den Ergebnissen der ersten (die Ergebnisse der Operationen an den ausgewählten Daten durchgeführt), bedeutet, dass, wenn der zweite Anruf lädt alles, bevor Sie Jede Behandlung wird nicht berücksichtigt, um die letzten Änderungen des ersten Anrufs zu berücksichtigen (weil ich Paralellismus in meinem Code verwende).
gibt alle Zeilen als eine Menge zurück? auch wenn es sich um eine große Datenmenge handelt? 10 000 Reihe 100 000 Reihe ...? – FrankelStein
Ja, so funktioniert SQL. Wenn Ihre Abfrage eine Million Zeilen zurückbringt, müssen Sie entweder mit ihnen umgehen oder eine intelligentere Abfrage schreiben. – duffymo
Und was ist der n + 1 Tod durch Latenz? – FrankelStein