Πλήρης οδηγός για τη διαδικασία και τη λειτουργία στο PL SQL – TechCult
Miscellanea / / April 07, 2023
Οι γλώσσες προγραμματισμού είναι ένα σύστημα για τη σύνταξη προγραμμάτων υπολογιστή. Ενώ πολλές γλώσσες προγραμματισμού βασίζονται σε κείμενο, άλλες μπορεί επίσης να είναι γραφικές. Αυτές οι γλώσσες βοηθούν τους προγραμματιστές να επικοινωνούν με τον υπολογιστή. Η δομημένη γλώσσα ερωτημάτων (SQL) είναι μια τέτοια γλώσσα προγραμματισμού που βοηθά στην αποθήκευση, το χειρισμό και την ανάκτηση δεδομένων που είναι αποθηκευμένα σε μια σχεσιακή βάση δεδομένων. Στον σημερινό οδηγό, θα μοιραστούμε λεπτομέρειες σχετικά με την εκτέλεση των μπλοκ ονομάτων (διαδικασίες και συναρτήσεις) που είναι υποπρογράμματα για PL SQL. Έτσι, αν ψάχνατε για έναν λεπτομερή οδηγό σχετικά με τη διαδικασία και τη λειτουργία στο PL SQL, έχετε φτάσει στη σωστή σελίδα. Σε αυτό το έγγραφο, μαζί με την κάλυψη του θέματος της αποθηκευμένης διαδικασίας PL SQL, θα μάθετε επίσης για το παράδειγμα διαδικασίας PL SQL. Για να μην αναφέρουμε, τη διαδικασία κλήσης PL SQL, τη διαδικασία εξόδου PL SQL και το παράδειγμα συνάρτησης PL SQL που είναι εξίσου σημαντικά για να μάθετε εάν είστε εκκολαπτόμενος προγραμματιστής. Λοιπόν, ας ξεκινήσουμε με τον αναλυτικό οδηγό μας για την PL SQL.
![Πλήρης οδηγός για τη διαδικασία και τη λειτουργία στο PL SQL](/f/c5fc88cbf60d67a0588a094545f4261c.png)
Πίνακας περιεχομένων
Πλήρης οδηγός για τη διαδικασία και τη λειτουργία στο PL SQL
Εδώ, δείξαμε διαδικασίες και συναρτήσεις PL SQL με παραδείγματα λεπτομερώς.
Τι είναι το PL SQL;
- Το PL SQL είναι μια σύντομη φόρμα για να Επεκτάσεις διαδικαστικής γλώσσας στην SQL.
- Η PL SQL είναι μια γλώσσα με δομή μπλοκ για προγραμματιστές που τους βοηθά να το κάνουν συνδυάζουν τη δύναμη της SQL με διαδικαστικές δηλώσεις.
- είναι της Oracle Corporation διαδικαστική παράταση.
- Αυτή η διαδικαστική γλώσσα είναι διαθέσιμη στο Μαντείο βάση δεδομένων, Times Ten βάση δεδομένων στη μνήμη και IBM Db2.
- Κατά το χρόνο εκτέλεσης, τόσο το PL/SQL όσο και το SQL προσφέρουν βέλτιστη απόδοση εκτελώντας μέσα στο ίδια διαδικασία διακομιστή.
- Η PL SQL διασφαλίζει την αποτελεσματική και απρόσκοπτη επεξεργασία των δηλώσεων SQL βελτιώνοντας την φορητότητα, ασφάλεια, και ευρωστία της βάσης δεδομένων.
- PL SQL σημαίνει απλώς εντολή στον μεταγλωττιστή τι να κάνω διά μέσου SQL και περίπου πώς να το κάνουμε μέσω του διαδικαστικό τρόπο.
- Η PL SQL δίνει περισσότερο έλεγχο στους προγραμματιστές με το χρήση βρόχων, συνθήκες, και αντικειμενοστρεφείς έννοιες.
Τι είναι η διαδικασία και η λειτουργία στο PL SQL;
- Το PL SQL έχει δύο υποπρογράμματα, γνωστά ως διαδικασίες και λειτουργίες.
- Συνήθως, χρησιμοποιείται μια διαδικασία για να εκτελέστε έναδράση και μια συνάρτηση να υπολογίστε μια τιμή.
- Τα υποπρογράμματα σε PL SQL έχουν α δηλωτικό μέρος, ένα εκτελέσιμο μέρος, και ένα προαιρετικό εξάρτημα χειρισμού εξαίρεσης.
- Αυτά τα υποπρογράμματα μπορούν να δημιουργηθούν και να αποθηκευτούν στη βάση δεδομένων ως αντικείμενα βάσης δεδομένων.
- Υποπρογράμματα διαδικασίας και συνάρτησης στο PL SQL επιστρέφουν α ενιαία τιμή που συνηθίζεται κυρίως υπολογίζω και επιστρέψτε μια τιμή.
- Αυτά τα υποπρογράμματα είναι απλώς μια συλλογή από Δηλώσεις PL/SQL και SQL που μπορεί να εκτελέσει α συγκεκριμένη εργασία.
Πώς να δημιουργήσετε μια αποθηκευμένη διαδικασία και λειτουργία στο PL SQL;
Όταν γράφεται ένα μπλοκ κώδικα για αποθηκευμένη διαδικασία ή συνάρτηση PL SQL, μεταγλωττίζονται από τη μηχανή Oracle. Μόλις μεταγλωττιστεί, αποθηκεύεται ως αντικείμενο βάσης δεδομένων. Η αποθηκευμένη διαδικασία ή το μπλοκ συνάρτησης κώδικα αποτελείται από τρία μέρη:
- Δηλωτικό Μέρος: Σε αυτό το τμήμα, δηλώνονται μεταβλητές, σταθερές, δρομέας ή εξαιρέσεις που πρόκειται να χρησιμοποιηθούν από διαδικασία ή συνάρτηση.
- Εκτελέσιμο μέρος: Σε αυτό το μέρος γράφεται ο ορισμός της διαδικασίας ή της συνάρτησης που δημιουργείται. Αυτό το μέρος αποτελείται επίσης από δηλώσεις PL/SQL ή SQL που εκχωρούν τιμές, χειρίζονται δεδομένα και ελέγχουν την εκτέλεση.
- Εξάρτημα χειρισμού εξαίρεσης: Αυτό το τελευταίο μέρος είναι προαιρετικό και σε αυτό γράφονται αναμενόμενες εξαιρέσεις που μπορεί να προκύψουν κατά την εκτέλεση του κώδικα που είναι γραμμένος στο εκτελέσιμο μέρος.
Πλεονεκτήματα της Αποθηκευμένης Διαδικασίας και της Λειτουργίας σε PL SQL
Πριν αποκαλύψουμε το παράδειγμα διαδικασίας PL SQL, πρέπει πρώτα να εξοικειωθείτε με τα πλεονεκτήματα των υποπρογραμμάτων διαδικασίας και συνάρτησης.
- Βελτιώστε την απόδοση της βάσης δεδομένων: Η μηχανή Oracle βοηθά στην αυτόματη μεταγλώττιση. Επίσης, κάθε φορά που εκτελείται μια διαδικασία ή συνάρτηση κλήσης PL SQL, η μηχανή Oracle φορτώνει τον μεταγλωττισμένο κώδικα στο SGA, System Global Area, κάτι που βοηθά στην ταχύτερη εκτέλεση.
- Επαναχρησιμοποίηση και χωρίς πλεονασμό: Ο αριθμός των γραμμών κώδικα δεν μπορεί να γραφτεί επανειλημμένα επειδή το ίδιο μπλοκ κώδικα για μια διαδικασία ή συνάρτηση μπορεί να κληθεί πολλές φορές σε πολλαπλά δεδομένα.
- Ασφάλεια: Η ασφάλεια της βάσης δεδομένων διατηρείται επίσης με τη χρήση αποθηκευμένων διαδικασιών ή λειτουργιών καθώς βοηθά στον έλεγχο της χρήσης και της πρόσβασής τους με την παραχώρηση άδειας στους χρήστες. Ωστόσο, η άδεια επεξεργασίας ή χειρισμού της βάσης δεδομένων δεν παρέχεται στους χρήστες.
- Ακεραιότητα: Ένα άλλο πλεονέκτημα της χρήσης της αποθηκευμένης διαδικασίας ή λειτουργίας PL SQL είναι ότι διασφαλίζει την ακεραιότητα καθώς αποθηκεύονται ως αντικείμενα βάσης δεδομένων από τη μηχανή Oracle.
- Αποθήκευση μνήμης: Ένα από τα πολλά πλεονεκτήματα των αποθηκευμένων διαδικασιών ή συναρτήσεων είναι ότι μοιράζονται τη μνήμη που βοηθά στην εξοικονόμηση μνήμης ως α μεμονωμένο αντίγραφο είτε μιας διαδικασίας είτε μιας συνάρτησης που μπορεί να φορτωθεί από έναν αριθμό χρηστών που έχουν άδεια να το κάνουν ίδιο.
Διαβάστε επίσης:Τρόπος διόρθωσης σφάλματος javascript: void (0).
Σύνταξη για τη δημιουργία αποθηκευμένης διαδικασίας
Μπορείτε να δείτε τη σύνταξη παρακάτω που χρησιμοποιείται για τη δημιουργία μιας αποθηκευμένης διαδικασίας στο Μαντείο:
ΔΗΜΙΟΥΡΓΙΑ Ή ΑΝΤΙΚΑΤΑΣΤΑΣΗ ΔΙΑΔΙΚΑΣΙΑΣ (IN/OUT/IN OUT , IN/OUT/IN OUT μεταβλητή/σταθερή δήλωση.ΑΡΧΙΖΟΥΝ-- Σώμα υποπρογράμματος PL/SQL.ΕΞΑΙΡΕΣΗ-- Εξαίρεση Μπλοκ χειρισμού ;ΤΕΛΟΣ,...) ΕΙΝΑΙ ΟΠΩΣ ;
![σύνταξη για τη δημιουργία μιας αποθηκευμένης διαδικασίας στο oracle](/f/0f784c735d8f1c114e1d8a90021e36c5.png)
Στον παραπάνω κώδικα:
- Όνομα_διαδικασίας αντιπροσωπεύει το όνομα της διαδικασίας.
- Όνομα_μεταβλητής αντιπροσωπεύει το όνομα της μεταβλητής που χρησιμοποιείται στην αποθηκευμένη διαδικασία.
- Δημιουργώ ή Αντικαταστήστε τη διαδικασία αντιπροσωπεύει μια λέξη-κλειδί που χρησιμοποιείται για τον καθορισμό του ονόματος της διαδικασίας που θα δημιουργηθεί.
- Αρχίζουν, Εξαίρεση, και Τέλος αντιπροσωπεύει λέξεις-κλειδιά που χρησιμοποιούνται για να υποδείξουν ότι έχουν δημιουργηθεί διαφορετικές ενότητες της διαδικασίας.
- IN/OUT/IN OUT αντιπροσωπεύει λειτουργίες παραμέτρων όπου, ΣΕ αναφέρεται σε ΜΟΝΟ ΓΙΑ ΑΝΑΓΝΩΣΗ λειτουργία που χρησιμοποιείται για μια μεταβλητή μέσω της οποίας θα δέχεται την τιμή από τον χρήστη. Αυτή είναι η προεπιλεγμένη λειτουργία παραμέτρων.
- ΕΞΩ αναφέρεται σε ΓΡΑΨΤΕ ΜΟΝΟ λειτουργία που χρησιμοποιείται για μια μεταβλητή που επιστρέφει την τιμή στον χρήστη.
- ΜΕΣΑ ΕΞΩ αναφέρεται σε ΑΝΑΓΝΩΣΗ και ΓΡΑΦΩ λειτουργία που χρησιμοποιείται για μια μεταβλητή που είτε δέχεται μια τιμή είτε επιστρέφει μια τιμή στον χρήστη.
- αντιπροσωπεύει ένα τέλος στον ορισμό της διαδικασίας. Μπορείτε επίσης απλά να χρησιμοποιήσετε το END στη θέση του.
Παράδειγμα διαδικασίας PL SQL
Για τον παρακάτω κώδικα διαδικασίας, ακολουθεί ένα απλό παράδειγμα που θα δείξει ξεκάθαρα τη χρήση της αποθηκευμένης διαδικασίας για την προσθήκη δύο αριθμών:
Ρύθμιση εξόδου διακομιστή ενεργοποίηση?ΔΗΜΙΟΥΡΓΙΑ Ή ΑΝΤΙΚΑΤΑΣΤΑΣΗ ΔΙΑΔΙΚΑΣΙΑΣ Άθροισμα (όπου ο αριθμός IN, ο αριθμός b IN) ΕΙΝΑΙ c αριθμός.ΑΡΧΙΖΟΥΝc := a+b;dbms_output.put_line ('Άθροισμα δύο αριθμών= '|| γ);ΤΕΛΟΣ Άθροισμα;
Σε περίπτωση κλήσης της διαδικασίας, θα εκτελεστεί ο παρακάτω κώδικας:
Ρύθμιση εξόδου διακομιστή ενεργοποίηση?ΔΗΛΩΝΩx αριθμός;y αριθμός;ΑΡΧΙΖΟΥΝx := &x;y := &y;Άθροισμα (x, y);ΤΕΛΟΣ;Οπου:Εισαγάγετε τιμή για x: 10Εισαγάγετε την τιμή για το y: 20Άθροισμα δύο αριθμών: 30
Η διαδικασία PL SQL δημιουργήθηκε με επιτυχία.
Σύνταξη για τη δημιουργία συνάρτησης σε PL SQL
Τώρα που γνωρίζετε τον τρόπο δημιουργίας σύνταξης για την αποθηκευμένη διαδικασία και το παράδειγμά της, ήρθε η ώρα να ρίξουμε λίγο φως στη δημιουργία συναρτήσεων σε PL/SQL:
ΔΗΜΙΟΥΡΓΙΑ Ή ΑΝΤΙΚΑΤΑΣΤΑΣΗ ΛΕΙΤΟΥΡΓΙΑΣ (ΣΕ , ΣΕ ΕΠΙΣΤΡΟΦΗ,...) ΕΙΝΑΙ ΟΠΩΣ μεταβλητή/σταθερή δήλωση.ΑΡΧΙΖΟΥΝ-- Σώμα υποπρογράμματος PL/SQL.ΕΞΑΙΡΕΣΗ-- Εξαίρεση Μπλοκ χειρισμού ;ΤΕΛΟΣ;
![σύνταξη για τη δημιουργία συναρτήσεων](/f/66359d3c11ce394485ee9166ea6919b8.png)
Στον παραπάνω κώδικα:
- Όνομα_συνάρτησης αντιπροσωπεύει το όνομα της συνάρτησης.
- Όνομα_μεταβλητής αντιπροσωπεύει το όνομα της μεταβλητής για τη μεταβλητή που χρησιμοποιείται στη συνάρτηση.
- Δημιουργώ ή Αντικατάσταση λειτουργίας αντιπροσωπεύει μια λέξη-κλειδί που χρησιμοποιείται για το όνομα της συνάρτησης που θα δημιουργηθεί.
- ΣΕ αντιπροσωπεύει ΜΟΝΟ ΓΙΑ ΑΝΑΓΝΩΣΗ λειτουργία που χρησιμοποιείται για μια μεταβλητή με την οποία θα δέχεται την τιμή από τον χρήστη. Αυτή είναι η προεπιλεγμένη παράμετρος.
- ΕΠΙΣΤΡΟΦΗ αντιπροσωπεύει μια λέξη-κλειδί που ακολουθείται από έναν τύπο δεδομένων που καθορίζει τον τύπο δεδομένων μιας τιμής που πρόκειται να επιστρέψει η συνάρτηση.
Διαβάστε επίσης:Επιδιόρθωση εντολής απέτυχε με κωδικό σφάλματος 1 Πληροφορίες αυγού Python
Παράδειγμα συνάρτησης PL SQL
Παρακάτω δίνεται ένα παράδειγμα της συνάρτησης PL SQL που δείχνει τη χρήση της συνάρτησης για την προσθήκη δύο αριθμών:
Ρύθμιση εξόδου διακομιστή ενεργοποίηση?ΔΗΜΙΟΥΡΓΙΑ Ή ΑΝΤΙΚΑΤΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣ Άθροισμα (αριθμός IN, b ΣΕ αριθμό) Αριθμός ΕΠΙΣΤΡΟΦΗΣ ΕΙΝΑΙγ αριθμός?ΑΡΧΙΖΟΥΝc := a+b;ΕΠΙΣΤΡΟΦΗ γ;ΤΕΛΟΣ;
![λειτουργία για την προσθήκη δύο αριθμών σύνταξη](/f/2262b9a0d637e39e8edc009649ca6a97.png)
Σε περίπτωση κλήσης του αθροίσματος της συνάρτησης, θα εκτελεστεί ο ακόλουθος κώδικας:
Ρύθμιση εξόδου διακομιστή ενεργοποίηση?ΔΗΛΩΝΩΝο1 αριθμός?Νο2 αριθμός?αριθμός αποτελέσματος·ΑΡΧΙΖΟΥΝno1 := &no1;no2 := &no2;αποτέλεσμα := Άθροισμα (no1,no2);dbms_output.put_line('Άθροισμα δύο αριθμών='||αποτέλεσμα);ΤΕΛΟΣ;Οπου:Εισαγάγετε την τιμή για το No1: 5Εισαγάγετε την τιμή για το no2: 5Άθροισμα δύο αριθμών: 10
Η διαδικασία PL SQL δημιουργήθηκε με επιτυχία.
![σύνταξη για να καλέσετε το άθροισμα της συνάρτησης](/f/e823b3f93e659d4d7cea300b20fbd68e.png)
Διαβάστε την επόμενη ενότητα για να μάθετε σχετικά με τη διαδικασία εξόδου PL SQL.
Τι είναι η διαδικασία εξόδου PL SQL;
Το Exit βοηθά όταν η πρόταση εξέρχεται από την τρέχουσα επανάληψη του βρόχου μόλις ικανοποιηθεί η συνθήκη της ρήτρας WHEN και μεταφέρει τον έλεγχο στο τέλος του βρόχου που βρίσκεται σε εξέλιξη. Οι δηλώσεις εξόδου δεν μπορούν να χρησιμοποιηθούν εκτός των βρόχων και προορίζονται επίσης για έξοδο από βρόχο χρήση άνευ όρων εντολών Έξοδος και Συνέχεια ή υπό όρους χρήση Έξοδος Πότε και Συνέχεια Πότε δηλώσεις.
Διαφορά μεταξύ αποθηκευμένης και διαδικασίας λειτουργίας
Τώρα που γνωρίζετε τη διαδικασία και τη λειτουργία στο PL SQL, ήρθε επιτέλους η ώρα να μάθετε και τη βασική διαφορά μεταξύ των δύο:
- Αποθηκευμένη διαδικασία μπορεί ή όχι να επιστρέψει μια τιμή στο καλούν μέρος του προγράμματος, ενώ, λειτουργία επιστρέφει μια τιμή στο καλούν μέρος του προγράμματος.
- Αποθηκευμένη διαδικασία επιστρέφει μια τιμή χρησιμοποιώντας την παράμετρο OUT ενώ, λειτουργία επιστρέφει την τιμή χρησιμοποιώντας το RETURN.
- Αποθηκευμένη διαδικασία χρησιμοποιεί την παράμετρο IN, OUT, IN OUT ενώ, λειτουργία χρησιμοποιεί μόνο την παράμετρο IN.
- Αποθηκευμένη διαδικασία δεν καθορίζει τον τύπο δεδομένων την τιμή εάν πρόκειται να επιστρέψει μετά από μια κλήση που του έγινε, ενώ λειτουργία καθορίζει τον τύπο δεδομένων της τιμής που πρόκειται να επιστρέψει μετά από μια κλήση που θα γίνει σε αυτήν.
- Αποθηκευμένη διαδικασία δεν μπορεί να κληθεί από το μπλοκ συναρτήσεων του κώδικα ενώ, λειτουργία μπορεί να κληθεί από το μπλοκ κώδικα διαδικασίας.
Συνιστάται:
- DDR4 vs DDR5 RAM: Τι είναι καλύτερο για gaming;
- Ποιοι είναι οι τύποι του Breadboard;
- Τρόπος ανάλυσης κειμένου
- 4 τρόποι για να χωρίσετε τη συμβολοσειρά με οριοθέτηση στην SQL
Ελπίζουμε ότι ο γιατρός μας διαδικασία και λειτουργία σε PL SQL ήταν χρήσιμος και επιτυχής στο να απαντήσει σε όλες τις αμφιβολίες σας σχετικά με το PL SQL και τα υποπρογράμματα, τη διαδικασία και τη λειτουργία του, τη διαδικασία εξόδου του PL SQL και άλλα. Εάν σας βοηθήσαμε με οποιονδήποτε τρόπο ή υπάρχουν περισσότερα ερωτήματα από την πλευρά σας, αφήστε τα σχόλιά σας παρακάτω για να μας ενημερώσετε.
Ο Έλον είναι συγγραφέας τεχνολογίας στο TechCult. Γράφει οδηγούς για περίπου 6 χρόνια τώρα και έχει καλύψει πολλά θέματα. Του αρέσει να καλύπτει θέματα που σχετίζονται με τα Windows, το Android και τα πιο πρόσφατα κόλπα και συμβουλές.