Junior — Middle
Μπορείτε να εξηγήσετε τι εννοείται με τη συναλλαγή στο πλαίσιο του SQL και πώς λειτουργεί;
sobes.tech AI
Απάντηση από AI
Στο πλαίσιο του SQL, μια συναλλαγή είναι μια ακολουθία ενεργειών σε μια βάση δεδομένων που εκτελείται ως μια ενιαία μονάδα. Η συναλλαγή διασφαλίζει ότι όλες οι ενέργειες μέσα σε αυτήν ολοκληρώνονται με επιτυχία ή καμία από αυτές δεν θα επηρεάσει τη βάση δεδομένων (ατομικότητα).
Βασικές ιδιότητες των συναλλαγών (ACID):
- Ατομικότητα: όλες οι ενέργειες μέσα στη συναλλαγή εκτελούνται πλήρως ή καθόλου.
- Συνεπτικότητα: μετά την εκτέλεση της συναλλαγής, η βάση δεδομένων παραμένει σε σωστή κατάσταση.
- Απομόνωση: παράλληλες συναλλαγές δεν επηρεάζουν η μία την άλλη.
- Αποθήκευση: μετά την επιβεβαίωση της συναλλαγής, οι αλλαγές διατηρούνται ακόμα και σε περίπτωση σφαλμάτων.
Παράδειγμα χρήσης μιας συναλλαγής σε SQL:
BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;
Εάν προκύψει σφάλμα κατά τη διάρκεια της διαδικασίας, μπορεί να εκτελεστεί το ROLLBACK; — τότε οι αλλαγές θα ακυρωθούν.