Διαφορά μεταξύ ενεργοποιητών και δρομέων

Anonim

Triggers vs Cursors

Σε μια βάση δεδομένων μια σκανδάλη είναι μια διαδικασία (τμήμα κώδικα) που εκτελείται αυτόματα όταν συμβαίνουν κάποια συγκεκριμένα συμβάντα σε έναν πίνακα / προβολή. Μεταξύ των άλλων χρήσεών της, οι ενεργοποιητές χρησιμοποιούνται κυρίως για τη διατήρηση της ακεραιότητας σε μια βάση δεδομένων. Ένας δρομέας είναι μια δομή ελέγχου που χρησιμοποιείται σε βάσεις δεδομένων για να περάσει από τα αρχεία της βάσης δεδομένων. Είναι πολύ παρόμοιο με το iterator που παρέχεται από πολλές γλώσσες προγραμματισμού.

Τι είναι οι ενεργοποιήσεις;

Μια σκανδάλη είναι μια διαδικασία (τμήμα κώδικα) που εκτελείται αυτόματα όταν εμφανίζονται κάποια συγκεκριμένα συμβάντα σε έναν πίνακα / προβολή μιας βάσης δεδομένων. Μεταξύ των άλλων χρήσεών της, οι ενεργοποιητές χρησιμοποιούνται κυρίως για τη διατήρηση της ακεραιότητας σε μια βάση δεδομένων. Οι ενεργοποιήσεις χρησιμοποιούνται επίσης για την επιβολή επιχειρηματικών κανόνων, τον έλεγχο των αλλαγών στη βάση δεδομένων και την αναπαραγωγή δεδομένων. Οι περισσότεροι συνηθισμένοι ενεργοποιητές είναι ενεργοποιητές γλωσσών χειρισμού δεδομένων (DML) που ενεργοποιούνται όταν χειρίζονται δεδομένα. Ορισμένα συστήματα βάσεων δεδομένων υποστηρίζουν μη ενεργοποιητές δεδομένων, οι οποίες ενεργοποιούνται όταν συμβαίνουν συμβάντα Γλώσσα ορισμού (DDL). Μερικά παραδείγματα είναι οι ενεργοποιήσεις που ενεργοποιούνται όταν δημιουργούνται πίνακες, κατά τη διάρκεια της διαδικασίας commit ή rollback κ.λπ. Αυτές οι ενεργοποιήσεις μπορούν να χρησιμοποιηθούν ειδικά για τον έλεγχο. Το σύστημα βάσης δεδομένων Oracle υποστηρίζει ενεργοποιήσεις επιπέδου σχήματος (δηλ. Ενεργοποιητές που ενεργοποιούνται όταν τροποποιούνται τα σχήματα βάσης δεδομένων), όπως μετά τη δημιουργία, πριν από την αλλαγή, μετά την αλλαγή, πριν από την πτώση, μετά την πτώση κλπ. Οι τέσσερις κύριοι τύποι ενεργοποιητών που υποστηρίζονται από την Oracle είναι ενεργοποιητές επιπέδου γραμμής, Κόμβοι ενεργοποίησης επιπέδου, ενεργοποίηση κάθε τύπου γραμμής και εκκινήσεις για κάθε τύπο δήλωσης.

Τι είναι οι Δρομείς;

Ο δρομέας είναι μια δομή ελέγχου που χρησιμοποιείται σε βάσεις δεδομένων για να περάσει από τα αρχεία της βάσης δεδομένων. Είναι πολύ παρόμοιο με το iterator που παρέχεται από πολλές γλώσσες προγραμματισμού. Εκτός από τη διέλευση από τα αρχεία σε μια βάση δεδομένων, οι δρομείς διευκολύνουν επίσης την ανάκτηση δεδομένων, την προσθήκη και τη διαγραφή αρχείων. Καθορίζοντας τον σωστό τρόπο, οι δρομείς μπορούν επίσης να χρησιμοποιηθούν για να μετακινηθούν προς τα πίσω. Όταν ένα ερώτημα SQL επιστρέφει ένα σύνολο γραμμών, αυτές επεξεργάζονται πραγματικά χρησιμοποιώντας δρομείς. Ένας δρομέας πρέπει να δηλωθεί και να του δοθεί ένα όνομα, πριν να μπορέσει να χρησιμοποιηθεί. Στη συνέχεια, ο δρομέας πρέπει να ανοιχτεί χρησιμοποιώντας την εντολή OPEN. Αυτή η ενέργεια θα τοποθετούσε τον κέρσορα ακριβώς πριν από την πρώτη σειρά του σετ αποτελεσμάτων των αποτελεσμάτων. Στη συνέχεια, ο δρομέας πρέπει να εκτελέσει τη λειτουργία FETCH για να πάρει πραγματικά μια σειρά δεδομένων στην εφαρμογή. Τέλος, ο δρομέας πρέπει να κλείσει χρησιμοποιώντας τη λειτουργία CLOSE. Οι κλειστοί δρομείς μπορούν να ανοίξουν ξανά.

Ποια είναι η διαφορά μεταξύ Triggers και Cursors;

Μια σκανδάλη είναι μια διαδικασία (τμήμα κώδικα) που εκτελείται αυτόματα όταν κάποια συγκεκριμένα συμβάντα εμφανίζονται σε έναν πίνακα / προβολή μιας βάσης δεδομένων, ενώ ένας δρομέας είναι μια δομή ελέγχου που χρησιμοποιείται σε βάσεις δεδομένων για να περάσει από τις εγγραφές της βάσης δεδομένων.Ένας δρομέας μπορεί να δηλωθεί και να χρησιμοποιηθεί μέσα σε μια σκανδάλη. Σε μια τέτοια κατάσταση, η δήλωση δήλωσης θα είναι μέσα στο σκανδάλη. Στη συνέχεια, το πεδίο του δρομέα θα περιοριζόταν σε αυτή την ενεργοποίηση. Μέσα σε μια σκανδάλη, εάν ένας δρομέας δηλωθεί σε ένα εισερχόμενο ή ένα διαγραμμένο πίνακα, ένας τέτοιος δρομέας δεν θα είναι προσβάσιμος από ένα ένθετο σκανδάλη. Μόλις ολοκληρωθεί η ενεργοποίηση, όλοι οι δρομείς που δημιουργούνται στο πλαίσιο της σκανδάλης θα διατεθούν.