2016-04-08 23 views
0

Ich habe einen einfachen Java-6-Code:ResultSet mit binären Daten

Connection conn = DriverManager.getConnection("jdbc:postgresql://localhost/db?user=u&password=p"); 
Statement statement = conn.createStatement(); 
ResultSet rs = statement.executeQuery("SELECT * FROM "+tabela); 

while(res.next()){ 
    byte[] fileBytes = res.getBytes(fileColumnIndex); 
    fos.write(fileBytes); 
} 

Also meine Frage ist - tut ResultSet Last, alle Daten zu einem lokalen Speicher auf einmal, oder es auf jedem res durch Chunks nicht geladen. Nächster()?

Antwort

0

einfach überprüfen Sie die Javadoc:

https://docs.oracle.com/javase/6/docs/api/java/sql/ResultSet.html

Sie bewegen sich durch Ihr Ergebnis aus der ausgeführten SQL-Abfrage, Zeile für Zeile, Spalte für Spalte (mit dem Index oder der Spaltenname)

(Vergessen Sie nicht Ressourcen freizugeben, wenn Sie mit Ihrer Ergebnismenge fertig sind).

Über Ihre Frage, sollten Sie als Programmierer die ResultSet als das gleiche Konzept auf den Stream: „Sie nichts über die Vergangenheit tun, Sie nicht wissen, die Zukunft, können Sie nur das vorliegende Verfahren“

Verwandte Themen