Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> PHP /MySQL Προγραμματισμός

Τι είναι Κλειδαριές σε SQL

; Σε ένα σχεσιακό σύστημα διαχείρισης βάσεων δεδομένων ( RDBMS ) , όπως μια βάση δεδομένων που βασίζονται σε SQL , οι " κλειδαριές " χρησιμοποιείται για να σταματήσει τους χρήστες να τροποποιούν τα ίδια δεδομένα την ίδια στιγμή . Αν ένα ορισμένο σύνολο δεδομένων είναι κλειδωμένο , δεν μπορεί να αλλοιωθεί από διαφορετικό χρήστη μέχρις ότου η αρχική χρήστης απογειώνεται την κλειδαριά. Άλλοι περιορισμοί μπορούν να εφαρμοστούν , όπως η πρόληψη άλλους χρήστες να διαβάσουν τα δεδομένα μέχρι να ξεκλειδωθεί , και υπάρχουν εξαιρέσεις σε αυτόν τον κανόνα ασφάλισης . Υπάρχουν έξι είδη των κλειδαριών σε SQL . Shared Κλειδαριές ( S )
Η

Μια κοινή κλειδαριά διατηρεί δεδομένα για έναν μόνο χρήστη να διαβάσει . Άλλοι χρήστες δεν μπορούν να τροποποιήσετε τα δεδομένα που τελεί υπό μια κοινή κλειδαριά , αλλά είναι σε θέση να διαβάσει τα δεδομένα . Μόλις έχει διαβάσει τα δεδομένα , η κλειδαριά είναι γενικά εγκαταλειφθεί , με ορισμένες εξαιρέσεις , όπως αν η συναλλαγή εκτελείται χρησιμοποιώντας το READCOMMITTED ή το επίπεδο απομόνωσης READCOMMITTEDLOCK ασφάλισης . Κοινό κλειδαριές που χρησιμοποιούνται σε read-only πράξεις μόνο , και δεν μπορεί να χρησιμοποιηθεί για να τροποποιήσει τα δεδομένα .
Εικόνων Αποκλειστική Κλειδαριές ( X )
Η

Ένα αποκλειστικό κλείδωμα χρησιμοποιείται για την πρόληψη ένα τμήμα των δεδομένων που έχει τροποποιηθεί με μία συναλλαγή από το να τροποποιηθεί από άλλη συναλλαγή. Από προεπιλογή , τα δεδομένα με αποκλειστική κλειδαριά δεν μπορούν να διαβαστούν από οποιονδήποτε άλλον εκτός από το ντουλάπι , ωστόσο, αυτή η ρύθμιση μπορεί να αλλάξει χρησιμοποιώντας την υπόδειξη NOLOCK ή READUNCOMMITTED επίπεδο απομόνωσης . Αυτό το είδος της ασφάλισης θα πρέπει να χρησιμοποιείται με λειτουργίες όπως INSERT , UPDATE και DELETE .

Η ενημέρωση Κλειδαριές ( U )
Η

Μια κλειδαριά ενημέρωση κάθεται στη μέση - το έδαφος μεταξύ ενός κοινού κλειδαριά και ένα αποκλειστικό κλείδωμα . Αν κάποια δεδομένα έχει αποκλειστικό κλείδωμα σε αυτό , καμία άλλη κλειδαριά μπορεί να τοποθετηθεί σε αυτό . Μια κλειδαριά ενημέρωση μπορεί να τοποθετηθεί σε μια κλειδαριά που έχει ήδη μια κοινή κλειδαριά για αυτό? Και όταν έρχεται η ώρα να ενημερώνομαι για τα δεδομένα , τις αλλαγές κλειδαριά ενημέρωση σε ένα αποκλειστικό κλείδωμα . Μόνο μία κλειδαριά ενημέρωση μπορεί να τοποθετηθεί πάνω σε ένα πόρο σε κάθε δεδομένη στιγμή .
Εικόνων Intent Κλειδαριές (Ι )
Η

Η πρόθεση κλειδώματος επιτρέπει μια συναλλαγή να κοινοποιούν άλλο συναλλαγή της πρόθεση να κλειδώσετε τα δεδομένα - " . Intent lock" εξ ου και το όνομα Εργάζονται αποτρέπουν τις συναλλαγές από το κλείδωμα άλλο συναλλαγές από το κλείδωμα μεγαλύτερο μέρος της βάσης δεδομένων . Για παράδειγμα , τοποθετώντας μια πρόθεση κλειδαριά στο τραπέζι αποτρέπει μια συναλλαγή από την τοποθέτηση αποκλειστικό κλείδωμα του πίνακα , η οποία θα ακυρώσει μια κλειδαριά σε ένα κατώτερο τμήμα, όπως μια γραμμή ή μια σελίδα .
Εικόνων Schema Κλειδαριές ( sch ) και Μαζική Ενημέρωση κλειδαριές ( BU )
Η

Schema κλειδαριές χρησιμοποιούνται με μια λειτουργία που απαιτεί το σχήμα του πίνακα είναι σε λειτουργία. Υπάρχουν δύο είδη - μια κλειδαριά σταθερότητα σχήματος ( Sch -S) , τα οποία δεν εμποδίζουν την πρόσβαση στα δεδομένα του αντικειμένου , και μια κλειδαριά τροποποίηση σχήματος, οι οποίες δεν εμποδίζουν την πρόσβαση στα δεδομένα του αντικειμένου. Μια κλειδαριά Μαζική ενημέρωση , όπως υποδηλώνει το όνομα , χρησιμοποιείται από μαζικές λειτουργίες όπως δεδομένα χύμα αντιγραφή , και όταν έχει καθοριστεί η υπόδειξη TABLOCK .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα