Πίνακας περιεχομένων:
Ορισμός - Τι σημαίνει η συναλλαγή;
Μια συναλλαγή, στο πλαίσιο μιας βάσης δεδομένων, είναι μια λογική μονάδα που εκτελείται ανεξάρτητα για ανάκτηση δεδομένων ή ενημερώσεις. Στις σχεσιακές βάσεις δεδομένων, οι συναλλαγές βάσεων δεδομένων πρέπει να είναι ατομικές, σταθερές, απομονωμένες και ανθεκτικές - συνοψίζονται ως το ακρωνύμιο ACID.
Η Techopedia εξηγεί τη συναλλαγή
Οι συναλλαγές ολοκληρώνονται με εντολές COMMIT ή ROLLBACK SQL, οι οποίες υποδεικνύουν την αρχή ή το τέλος μιας συναλλαγής. Το ακρωνύμιο ACID ορίζει τις ιδιότητες μιας συναλλαγής βάσης δεδομένων, ως εξής:
- Ατομικότητα: Μια συναλλαγή πρέπει να είναι πλήρης, αποθηκευμένη (δεσμευμένη) ή τελείως ανακληθείσα (προς τα πίσω). Η πώληση σε μια βάση δεδομένων λιανικής πώλησης απεικονίζει ένα σενάριο που εξηγεί την ατομικότητα, π.χ. η πώληση συνίσταται σε μείωση αποθέματος και ρεκόρ εισερχόμενων μετρητών. Και οι δύο είτε συμβαίνουν μαζί είτε δεν συμβαίνουν - είναι όλα ή τίποτα.
- Συνέπεια: Η συναλλαγή πρέπει να είναι πλήρως συμβατή με την κατάσταση της βάσης δεδομένων όπως ήταν πριν από τη συναλλαγή. Με άλλα λόγια, η συναλλαγή δεν μπορεί να σπάσει τους περιορισμούς της βάσης δεδομένων. Για παράδειγμα, εάν μια στήλη αριθμού τηλεφώνου ενός πίνακα βάσης δεδομένων μπορεί να περιέχει μόνο αριθμούς, τότε η συνέπεια συνεπάγεται ότι οποιαδήποτε συναλλαγή που προσπαθεί να εισάγει αλφαβητική επιστολή μπορεί να μην δεσμεύει.
- Απομόνωση: Τα δεδομένα συναλλαγών δεν πρέπει να είναι διαθέσιμα σε άλλες συναλλαγές έως ότου η αρχική συναλλαγή δεσμευτεί ή ανατραπεί.
- Ανθεκτικότητα: Οι αλλαγές δεδομένων συναλλαγών πρέπει να είναι διαθέσιμες, ακόμη και σε περίπτωση αποτυχίας της βάσης δεδομένων.