Junior
Τι είναι το ResultSet στο JDBC;
sobes.tech AI
Απάντηση από AI
Η διεπαφή ResultSet παρέχει πρόσβαση στα δεδομένα πίνακα που λαμβάνονται ως αποτέλεσμα της εκτέλεσης μιας ερώτησης SQL. Λειτουργεί ως επαναλήπτης πάνω στις γραμμές του αποτελέσματος.
Οι βασικές δυνατότητες του ResultSet:
- Μετακίνηση μεταξύ γραμμών:
next(),previous(),first(),last(),absolute(),relative(). - Ανάγνωση δεδομένων από στήλες:
getString(),getInt(),getDouble(),getObject()και άλλα, με βάση το δείκτη ή το όνομα της στήλης. - Ενημέρωση δεδομένων στην τρέχουσα γραμμή (για
ResultSetπου μπορούν να ενημερωθούν). - Απόκτηση μεταδεδομένων του αποτελέσματος (
ResultSetMetaData).
Τυπικός βρόχος επεξεργασίας ResultSet:
// Υποθέτουμε ότι το statement είναι Statement ή PreparedStatement
try (ResultSet resultSet = statement.executeQuery("SELECT id, name FROM users")) {
while (resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
System.out.println("ID χρήστη: " + id + ", Όνομα: " + name);
}
} catch (SQLException e) {
e.printStackTrace();
}
Είναι σημαντικό να κλείνετε σωστά το ResultSet (χρησιμοποιώντας try-with-resources ή μπλοκ finally) για να απελευθερώσετε τους πόρους της βάσης δεδομένων.