Βρόχοι PL/SQL

Brochoi Pl Sql



Οι βρόχοι είναι ένα από τα κύρια δομικά στοιχεία στον προγραμματισμό. Χρησιμοποιούμε βρόχους για να δημιουργήσουμε τα διαχειρίσιμα μπλοκ κώδικα που μπορούν να εκτελεστούν πολλές φορές όταν μια συγκεκριμένη συνθήκη είναι αληθής. Αποτελούν το βασικό οστό κατά την αυτοματοποίηση των επαναλαμβανόμενων εργασιών χωρίς επανεγγραφή ενός μπλοκ κώδικα πολλές φορές.

Όπως όλες οι κύριες γλώσσες προγραμματισμού, η PL/SQL υποστηρίζει βρόχους που επιτρέπουν την επανάληψη ενός συνόλου εντολών μέχρι να εκπληρωθεί μια συγκεκριμένη συνθήκη.

Σε αυτό το σεμινάριο, θα διερευνήσουμε τη χρήση της δήλωσης LOOP σε PL/SQL για την επανειλημμένη εκτέλεση ενός μπλοκ κώδικα.







Oracle Loops

Η γλώσσα PL/SQL υποστηρίζει τις διάφορες δομές βρόχου, όπως βρόχους 'for' και βρόχους 'while'. Μπορούμε να εκφράσουμε τη σύνταξη ενός γενικού βρόχου στο Oracle όπως φαίνεται παρακάτω:



<< επιγραφή >> ΒΡΟΧΟΣ
loop_statement;
END LOOP loop_label;

Αυτό περιέχει τη λέξη-κλειδί LOOP και το σώμα του βρόχου προς εκτέλεση και περικλείεται με τη λέξη-κλειδί END LOOP.



Το μπλοκ LOOP εκτελεί τις καθορισμένες ενέργειες και επιστρέφει το στοιχείο ελέγχου στον όρο του επάνω βρόχου μετά την ολοκλήρωση. Αυτό συνήθως περικλείεται σε μια ρήτρα EXIT ή EXIT WHEN για τον τερματισμό του βρόχου μετά την εκπλήρωση μιας συγκεκριμένης συνθήκης. Αυτό βοηθά στην αποτροπή των άπειρων βρόχων.





Σύνταξη Oracle For Loop:

Το παρακάτω δείχνει τη σύνταξη ενός βρόχου 'for' σε PL/SQL:

ΑΡΧΙΣΕΙ
FOR loop_variable IN [lower_bound..upper_bound] LOOP
-- κώδικας που θα εκτελεστεί στον βρόχο
END LOOP;
ΤΕΛΟΣ;

Το loop_variable σάς επιτρέπει να ορίσετε έναν βρόχο που χρησιμοποιείται για τον έλεγχο του βρόχου και των κάτω και άνω ορίων. Τα άνω και κάτω όρια καθορίζουν τις τιμές εύρους όπου γίνεται η αξιολόγηση βρόχου.



Oracle while Loops

Μπορούμε επίσης να ορίσουμε τους βρόχους 'while' στο PL/SQL όπως αποδεικνύεται από την ακόλουθη σύνταξη:

ΑΡΧΙΣΕΙ
WHILE κατάσταση LOOP
-- δράση βρόχου
END LOOP;
ΤΕΛΟΣ;

Σε έναν βρόχο 'while', η ενέργεια του βρόχου εκτελείται επανειλημμένα ενώ η συνθήκη είναι αληθής.

Δρομέας Oracle για βρόχους

Η Oracle υποστηρίζει επίσης τους βρόχους 'δρομέας για' που μας επιτρέπουν να εκτελέσουμε ένα σύνολο εντολών για κάθε σειρά σε ένα δεδομένο σύνολο αποτελεσμάτων. Η σύνταξη μπορεί να εκφραστεί ως εξής:

ΑΡΧΙΣΕΙ
FOR loop_variable IN (ΕΠΙΛΟΓΗ στήλη1, στήλη2, ...
ΑΠΟ πίνακα 1, πίνακα 2, ...
WHERE συνθήκη) LOOP
-- δράση βρόχου
END LOOP;
ΤΕΛΟΣ;

Παραδείγματα βρόχων στο Oracle

Τα ακόλουθα παραδείγματα καλύπτουν τα βασικά της εργασίας με βρόχους δρομέα for, while και για στο Oracle.

Παράδειγμα Oracle For Loop:

Αυτό το παράδειγμα δείχνει πώς να χρησιμοποιήσετε έναν βρόχο 'για' για να εκτυπώσετε τους αριθμούς από το 1 έως το 10.

ΑΡΧΙΣΕΙ
FOR i IN 1..10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
END LOOP;
ΤΕΛΟΣ;

Παράδειγμα while Loop:

Μπορούμε να εκτελέσουμε μια παρόμοια ενέργεια χρησιμοποιώντας έναν βρόχο while όπως φαίνεται παρακάτω:

ΑΡΧΙΣΕΙ
ΔΗΛΩΝΩ
i ΑΡΙΘΜΟΣ := 1;
ΑΡΧΙΣΕΙ
WHILE i <= 10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
i := i + 1;
END LOOP;
ΤΕΛΟΣ;
ΤΕΛΟΣ;

Αυτό θα πρέπει να εκτελέσει μια παρόμοια ενέργεια με τον βρόχο 'για'.

Παράδειγμα δρομέα για βρόχο:

Το παρακάτω δείχνει πώς να χρησιμοποιήσετε τον βρόχο 'δρομέας για' για να λάβετε το πλήρες όνομα ενός πελάτη:

ΑΡΧΙΣΕΙ
ΓΙΑ εργαζόμενο IN (ΕΠΙΛΕΞΤΕ όνομα, επώνυμο
ΑΠΟ υπαλλήλους) LOOP
DBMS_OUTPUT.PUT_LINE(employee.first_name || ' ' || υπάλληλος.επώνυμο);
END LOOP;
ΤΕΛΟΣ;

Παράδειγμα εξόδου:

συμπέρασμα

Σε αυτήν την ανάρτηση, συναντήσατε τρεις κύριους τύπους βρόχων στη γλώσσα Oracle PL/SQL. Μπορείτε να ελέγξετε την τεκμηρίωση για περαιτέρω εξερεύνηση.