Sobes.tech
Junior — Middle

Μπορείτε να εξηγήσετε πώς υλοποιείται το αντικείμενο ResultSet και πώς λειτουργεί για την απόκτηση δεδομένων από τη βάση;

sobes.tech AI

Απάντηση από AI

Το ResultSet στη Java είναι μια διεπαφή που αντιπροσωπεύει έναν πίνακα δεδομένων που λαμβάνεται ως αποτέλεσμα της εκτέλεσης ενός ερωτήματος SQL μέσω JDBC.

Πώς λειτουργεί:

  • Μετά την εκτέλεση του ερωτήματος μέσω ενός αντικειμένου Statement ή PreparedStatement, καλείται η μέθοδος executeQuery(), η οποία επιστρέφει ένα ResultSet.
  • Το ResultSet περιέχει έναν δείκτη που αρχικά βρίσκεται πριν από την πρώτη γραμμή του αποτελέσματος.
  • Για την περιήγηση στα δεδομένα, χρησιμοποιείται η μέθοδος next(), η οποία μετακινεί τον δείκτη στην επόμενη γραμμή και επιστρέφει true αν η γραμμή υπάρχει.
  • Για την ανάκτηση τιμών από την τρέχουσα γραμμή, χρησιμοποιούνται μέθοδοι όπως getString(), getInt(), getDate(), κ.λπ., με αναφορά στο όνομα ή το δείκτη της στήλης.

Παράδειγμα:

ResultSet rs = statement.executeQuery("SELECT id, name FROM users");
while (rs.next()) {
    int id = rs.getInt("id");
    String name = rs.getString("name");
    // επεξεργασία δεδομένων
}

Έτσι, το ResultSet παρέχει διαδοχική πρόσβαση στις γραμμές του αποτελέσματος του SQL ερωτήματος και επιτρέπει την εξαγωγή δεδομένων ανά στήλη.