Τι είναι το πεδίο εφαρμογής του ατόμου;
Για να κατανοήσετε την ατομικότητα και τα ατομικά πεδία, εξετάστε την ακόλουθη, μη ατομική, ακολουθία λειτουργιών για να τροποποιήσετε το υπόλοιπο τραπεζών ενός χρήστη:
1. Διαβάστε το υπόλοιπο από την τράπεζα.
2. Αφαιρέστε το ποσό της συναλλαγής από το υπόλοιπο.
3. Γράψτε το υπόλοιπο πίσω στην τράπεζα.
Για να επιτύχει αυτές οι λειτουργίες, η βάση δεδομένων πρέπει να κλειδωθεί μεταξύ της ανάγνωσης και της εγγραφής, διότι διαφορετικά μπορεί να γράψει μια άλλη συναλλαγή στη βάση δεδομένων μεταξύ αυτών των δύο λειτουργιών. Επιπλέον, εάν κάτι δεν πάει στραβά κατά τη διάρκεια της συναλλαγής (π.χ., η βάση δεδομένων προχωράει εκτός σύνδεσης κατά τη διάρκεια της λειτουργίας εγγραφής), η λειτουργία πρέπει να αποτύχει εντελώς και η βάση δεδομένων πρέπει να αποκατασταθεί στο κράτος ότι ήταν πριν ξεκινήσει η συναλλαγή.
Με την ατομικότητα, η σειρά των λειτουργιών συμπεριφέρεται ως ενιαία λειτουργία ή αποτυγχάνει εξ ολοκλήρου. Δηλαδή, ο κώδικας για την εκτέλεση μιας δεδομένης λειτουργίας περικλείεται μέσα σε ένα *ατομικό πεδίο εφαρμογής *, και εάν αποτύχει κάποια λειτουργία στην ακολουθία, ολόκληρη η συναλλαγή έχει επαναληφθεί, σαν να μην έχει συμβεί ποτέ καμία από τις λειτουργίες της ακολουθίας.
Εγγυήσεις ατομικού πεδίου:
1. Εάν δεν αποτύχει καμία λειτουργία στο πεδίο εφαρμογής, όλες οι εργασίες συμβαίνουν.
2. Εάν αποτύχει κάποια λειτουργία στο πεδίο εφαρμογής, καμία από τις εργασίες δεν προκύπτει. και
3. Εάν κάποια λειτουργία αρχίσει να αποτυγχάνει, οποιεσδήποτε πράξεις που έχουν ήδη συμβεί είναι αμέσως περιστρέφονται πίσω, αποκαθιστώντας το σύστημα στην κατάσταση του πριν ξεκινήσουν οποιαδήποτε από τις επιχειρήσεις.