Middle
Πώς λειτουργούν οι συναλλαγές στο SQL Server;
sobes.tech AI
Απάντηση από AI
Στον SQL Server, μια συναλλαγή είναι μια ακολουθία λειτουργιών που εκτελούνται ως ενιαία μονάδα. Η συναλλαγή εγγυάται τις ιδιότητες ACID:
- Ατομικότητα: όλες οι λειτουργίες εντός της συναλλαγής εκτελούνται πλήρως ή καθόλου.
- Συνεπτικότητα: μετά την εκτέλεση της συναλλαγής, η βάση δεδομένων παραμένει σε σωστή κατάσταση.
- Απομόνωση: παράλληλες συναλλαγές δεν επηρεάζουν η μία την άλλη.
- Ανθεκτικότητα: μετά την επιβεβαίωση, οι αλλαγές διατηρούνται ακόμη και σε περίπτωση σφαλμάτων.
Οι συναλλαγές ξεκινούν με BEGIN TRANSACTION και τελειώνουν με COMMIT (επιβεβαίωση αλλαγών) ή ROLLBACK (αναίρεση αλλαγών). Το SQL Server χρησιμοποιεί ένα αρχείο καταγραφής συναλλαγών για την εξασφάλιση αξιοπιστίας και ανάκτησης.
Παράδειγμα:
BEGIN TRANSACTION;
UPDATE Accounts SET Balance = Balance - 100 WHERE AccountID = 1;
UPDATE Accounts SET Balance = Balance + 100 WHERE AccountID = 2;
IF @@ERROR <> 0
ROLLBACK TRANSACTION;
ELSE
COMMIT TRANSACTION;