65 Ερωτήσεις και απαντήσεις συνέντευξης PL/SQL (2025)
PL/SQL Συνέντευξη Ερωτήσεις και Απαντήσεις για Freshers
1) Τι είναι το PL SQL;
Oracle Η PL/SQL είναι μια επέκταση της γλώσσας SQL που συνδυάζει τη δύναμη χειρισμού δεδομένων της SQL με την επεξεργαστική ισχύ της διαδικαστικής γλώσσας για τη δημιουργία εξαιρετικά ισχυρών ερωτημάτων SQL. Το PL/SQL διασφαλίζει την απρόσκοπτη επεξεργασία των δηλώσεων SQL ενισχύοντας την ασφάλεια, τη φορητότητα και την ευρωστία της Βάσης Δεδομένων.
Το PL/SQL σημαίνει "Επεκτάσεις διαδικαστικής γλώσσας στη δομημένη γλώσσα ερωτημάτων".
👉 Δωρεάν λήψη PDF: Ερωτήσεις & Απαντήσεις συνέντευξης PL/SQL
2) Διαφοροποίηση μεταξύ % ROWTYPE και TYPE RECORD.
% ROWTYPE χρησιμοποιείται όταν ένα ερώτημα επιστρέφει μια ολόκληρη σειρά πίνακα ή προβολής.
ΕΓΓΡΑΦΗ ΤΥΠΟΥ από την άλλη πλευρά, χρησιμοποιείται όταν ένα ερώτημα επιστρέφει στήλη διαφορετικών πινάκων ή προβολών.
Π.χ. TYPE r_emp είναι ΡΕΚΟΡ (sno smp.smpno%type,sname smp sname %type)
e_rec smp %ROWTYPE
Ο δρομέας c1 είναι επιλέξτε smpno, από smp.
e_rec c1 %ROWTYPE
3) Εξηγήστε τις χρήσεις του δρομέα.
Ο δρομέας είναι μια ονομαζόμενη ιδιωτική περιοχή στην SQL από την οποία είναι δυνατή η πρόσβαση σε πληροφορίες. Απαιτείται να επεξεργάζονται κάθε σειρά ξεχωριστά για ερωτήματα που επιστρέφουν πολλές σειρές.
4) Εμφάνιση κωδικού δρομέα για βρόχο.
Ο δρομέας δηλώνει έμμεσα το %ROWTYPE ως ευρετήριο βρόχου. Στη συνέχεια ανοίγει έναν δρομέα, λαμβάνει σειρές τιμών από το ενεργό σύνολο στα πεδία της εγγραφής και κλείνει όταν υποβάλλονται σε επεξεργασία όλες οι εγγραφές.
Π.χ.
FOR smp_rec IN C1 LOOP totalsal=totalsal+smp_recsal; ENDLOOP;
5) Εξηγήστε τις χρήσεις της ενεργοποίησης της βάσης δεδομένων.
Μια μονάδα προγράμματος PL/SQL που σχετίζεται με έναν συγκεκριμένο πίνακα βάσης δεδομένων ονομάζεται ενεργοποίηση βάσης δεδομένων. Χρησιμοποιείται για :
1) Τροποποιήσεις στοιχείων ελέγχου.
2) Καταγραφή συμβάντων με διαφάνεια.
3) Επιβολή πολύπλοκων επιχειρηματικών κανόνων.
4) Διατηρήστε τους πίνακες αντιγράφων
5) Εξαγωγή τιμών στηλών
6) Εφαρμόστε σύνθετες εξουσιοδοτήσεις ασφαλείας
6) Ποια είναι τα δύο είδη εξαιρέσεων.
Το σφάλμα χειρισμού μέρους του μπλοκ PL/SQL ονομάζεται Εξαίρεση. Έχουν δύο τύπους: user_defined και predefined.
7) Εμφάνιση ορισμένων προκαθορισμένων εξαιρέσεων.
DUP_VAL_ON_INDEX
ZERO_DIVIDE
ΔΕ ΒΡΕΘΗΚΑΝ ΔΕΔΟΜΕΝΑ
TOO_MANY_ROWS
CURSOR_ALREADY_OPEN
INVALID_NUMBER
INVALID_CURSOR
ΠΡΟΓΡΑΜΜΑ_ΣΦΑΛΜΑ
TIME OUT _ON_RESOURCE
STORAGE_ERROR
LOGON_DENIED
VALUE_ERROR
και ούτω καθεξής
8) Εξηγήστε το Raise_application_error.
Είναι μια διαδικασία του πακέτου DBMS_STANDARD που επιτρέπει την έκδοση μηνυμάτων σφάλματος που ορίζονται από το χρήστη από την ενεργοποίηση της βάσης δεδομένων ή το αποθηκευμένο υποπρόγραμμα.
9) Δείξτε πώς καλούνται οι συναρτήσεις και οι διαδικασίες σε ένα μπλοκ PL SQL.
Η συνάρτηση καλείται ως μέρος μιας έκφρασης.
total:=calculate_sal('b644')
Η διαδικασία ονομάζεται δήλωση στο PL / SQL.
calculate_bonus('b644');
10) Εξηγήστε δύο εικονικούς πίνακες που είναι διαθέσιμοι κατά την εκτέλεση της ενεργοποίησης της βάσης δεδομένων.
Οι στήλες του πίνακα αναφέρονται ως OLD.column_name και NEW.column_name.
Για κανόνες ετικέτας που σχετίζονται με INSERT, οι τιμές NEW.column_name είναι διαθέσιμες μόνο.
Για κανόνες ετικέτας που σχετίζονται με DELETE, οι τιμές OLD.column_name είναι διαθέσιμες μόνο.
Για κανόνες ετικέτας που σχετίζονται με ΕΝΗΜΕΡΩΣΗ, είναι διαθέσιμες και οι δύο στήλες του πίνακα.
11) Ποιοι είναι οι κανόνες που πρέπει να εφαρμόζονται στα NULL κατά την εκτέλεση συγκρίσεων;
1) NULL δεν είναι ποτέ TRUE ή FALSE
2) Το NULL δεν μπορεί να είναι ίσο ή άνισο με άλλες τιμές
3) Εάν μια τιμή σε μια παράσταση είναι NULL, τότε η ίδια η έκφραση αξιολογείται σε NULL εκτός από τον τελεστή συνένωσης (||)
12) Πώς συντάσσεται μια διαδικασία PL SQL;
Η διαδικασία μεταγλώττισης περιλαμβάνει διαδικασίες ελέγχου σύνταξης, σύνδεσης και δημιουργίας κώδικα p.
Ο έλεγχος σύνταξης ελέγχει τους κωδικούς PL SQL για σφάλματα μεταγλώττισης. Όταν διορθωθούν όλα τα σφάλματα, εκχωρείται μια διεύθυνση αποθήκευσης στις μεταβλητές που διατηρούν δεδομένα. Ονομάζεται Δέσμευση. Ο κωδικός P είναι μια λίστα οδηγιών για τη μηχανή PL SQL. Ο P-code αποθηκεύεται στη βάση δεδομένων για μπλοκ με όνομα και χρησιμοποιείται την επόμενη φορά που θα εκτελεστεί.
13) Διαφοροποίηση μεταξύ σφαλμάτων σύνταξης και χρόνου εκτέλεσης.
Ένα συντακτικό σφάλμα μπορεί εύκολα να εντοπιστεί από έναν μεταγλωττιστή PL/SQL. Για παράδειγμα, λανθασμένη ορθογραφία.
Ένα σφάλμα χρόνου εκτέλεσης αντιμετωπίζεται με τη βοήθεια της ενότητας χειρισμού εξαιρέσεων σε ένα Μπλοκ PL/SQL. Για παράδειγμα, η εντολή SELECT INTO, η οποία δεν επιστρέφει καμία σειρά.
14) Εξηγήστε το Commit, το Rollback και το Savepoint.
Για μια δήλωση COMMIT, ισχύει το εξής:
- Οι άλλοι χρήστες μπορούν να δουν τις αλλαγές δεδομένων που έγιναν από τη συναλλαγή.
- Οι κλειδαριές που αποκτήθηκαν από τη συναλλαγή απελευθερώνονται.
- Η εργασία που γίνεται από τη συναλλαγή γίνεται μόνιμη.
Μια δήλωση ROLLBACK εκδίδεται όταν τελειώνει η συναλλαγή και ισχύει το ακόλουθο.
- Η εργασία που έγινε σε μια μετάβαση αναιρείται σαν να μην εκδόθηκε ποτέ.
- Όλα τα λουκέτα που αποκτήθηκαν με συναλλαγή απελευθερώνονται.
Αναιρεί όλη τη δουλειά που έχει κάνει ο χρήστης σε μια συναλλαγή. Με το SAVEPOINT, μόνο μέρος της συναλλαγής μπορεί να αναιρεθεί.
15) Ορίστε έμμεσους και ρητούς δρομείς.
Ένας δρομέας είναι σιωπηρός από προεπιλογή. Ο χρήστης δεν μπορεί να ελέγξει ή να επεξεργαστεί τις πληροφορίες σε αυτόν τον κέρσορα.
Εάν ένα ερώτημα επιστρέφει πολλές σειρές δεδομένων, το πρόγραμμα ορίζει έναν ρητό δρομέα. Αυτό επιτρέπει στην εφαρμογή να επεξεργάζεται κάθε σειρά διαδοχικά καθώς την επιστρέφει ο κέρσορας.
16) Εξηγήστε το σφάλμα μετάλλαξης του πίνακα.
Εμφανίζεται όταν ένας κανόνας ετικέτας προσπαθεί να ενημερώσει μια σειρά που χρησιμοποιεί αυτήν τη στιγμή. Διορθώνεται χρησιμοποιώντας προβολές ή προσωρινούς πίνακες, επομένως η βάση δεδομένων επιλέγει το ένα και ενημερώνει το άλλο.
17) Πότε απαιτείται δήλωση δήλωσης;
Η δήλωση DECLARE χρησιμοποιείται από ανώνυμα μπλοκ PL SQL, όπως με αυτόνομες, μη αποθηκευμένες διαδικασίες. Εάν χρησιμοποιείται, πρέπει να μπει πρώτα σε αυτόνομο αρχείο.
18) Πόσες σκανδάλες μπορούν να εφαρμοστούν σε ένα τραπέζι;
Σε ένα τραπέζι μπορούν να εφαρμοστούν το πολύ 12 εναύσματα.
19) Ποια είναι η σημασία του SQLCODE και του SQLERRM;
Το SQLCODE επιστρέφει την τιμή του αριθμού του σφάλματος για το τελευταίο σφάλμα που αντιμετωπίστηκε ενώ το SQLERRM επιστρέφει το μήνυμα για το τελευταίο σφάλμα.
20) Αν ένας δρομέας είναι ανοιχτός, πώς μπορούμε να βρούμε σε ένα PL SQL Block;
μπορεί να χρησιμοποιηθεί η μεταβλητή κατάστασης δρομέα %ISOPEN.
Ερωτήσεις συνέντευξης PL/SQL για έμπειρους
21) Εμφάνιση των δύο εξαιρέσεων δρομέα PL/SQL.
Cursor_Already_Open
Invaid_cursor
22) Ποιοι χειριστές ασχολούνται με το NULL;
Το NVL μετατρέπει το NULL σε άλλη καθορισμένη τιμή.
var:=NVL(var2,'Hi');
IS NULL και IS NOT NULL μπορεί να χρησιμοποιηθεί για να ελέγξει συγκεκριμένα εάν η τιμή μιας μεταβλητής είναι NULL ή όχι.
23) Το SQL*Plus διαθέτει επίσης μηχανή PL/SQL;
Όχι, το SQL*Plus δεν έχει ενσωματωμένη μηχανή PL/SQL. Έτσι, όλος ο κώδικας PL/SQL αποστέλλεται απευθείας στη μηχανή βάσης δεδομένων. Είναι πολύ πιο αποτελεσματικό καθώς κάθε δήλωση δεν αφαιρείται ξεχωριστά.
24) Ποια πακέτα είναι διαθέσιμα στους προγραμματιστές PL SQL;
Σειρά πακέτων DBMS_, όπως DBMS_PIPE, DBMS_DDL, DBMS_LOCK, DBMS_ALERT, DBMS_OUTPUT, DBMS_JOB, DBMS_UTILITY, DBMS_SQL, DBMS_TRANSACTION, UTL_FILE.
25) Εξηγήστε 3 βασικά μέρη μιας σκανδάλης.
- Δήλωση ή συμβάν πυροδότησης.
- Ένας περιορισμός
- Μια ενέργεια
26) Τι είναι οι συναρτήσεις χαρακτήρων;
Το INITCAP, UPPER, SUBSTR, LOWER και LENGTH είναι όλες συναρτήσεις χαρακτήρων. Οι ομαδικές συναρτήσεις δίνουν αποτελέσματα με βάση ομάδες σειρών, σε αντίθεση με μεμονωμένες σειρές. Είναι MAX, MIN, AVG, COUNT και SUM.
27) Εξηγήστε το TTITLE και το BTITLE.
Εντολές TTITLE και BTITLE που ελέγχουν τις κεφαλίδες και τα υποσέλιδα αναφορών.
28) Εμφάνιση των χαρακτηριστικών του δρομέα του PL/SQL.
%ISOPEN:
Ελέγχει εάν ο κέρσορας είναι ανοιχτός ή όχι
%ROWCOUNT:
Ο αριθμός των σειρών που ενημερώνονται, διαγράφονται ή λαμβάνονται.
%FOUND:
Ελέγχει εάν ο δρομέας έχει φέρει κάποια σειρά. Είναι αλήθεια εάν ληφθούν σειρές
%NOT FOUND:
Ελέγχει εάν ο δρομέας έχει φέρει κάποια σειρά. Είναι αληθές εάν οι σειρές δεν λαμβάνονται.
29) Τι είναι τομή;
Το Intersect είναι το γινόμενο δύο πινάκων και παραθέτει μόνο τις αντίστοιχες σειρές.
30) Τι είναι οι ακολουθίες;
Οι ακολουθίες χρησιμοποιούνται για τη δημιουργία αριθμών ακολουθίας χωρίς επιβάρυνση κλειδώματος. Το μειονέκτημά του είναι ότι ο αριθμός σειράς χάνεται εάν η συναλλαγή επαναφερθεί.
31) Πώς θα αναφέρατε τις τιμές στηλών ΠΡΙΝ και ΜΕΤΑ την εισαγωγή και διαγραφή κανόνων;
Χρησιμοποιώντας τη λέξη-κλειδί "new.column name", οι κανόνες ετικέτας μπορούν να αναφέρουν τιμές στηλών ανά νέα συλλογή. Χρησιμοποιώντας τη λέξη-κλειδί "old.column name", μπορούν να αναφέρουν τιμές στηλών ανά παλιά συλλογή.
32) Ποιες είναι οι χρήσεις των λέξεων-κλειδιών SYSDATE και USER;
Το SYSDATE αναφέρεται στην τρέχουσα ημερομηνία συστήματος διακομιστή. Είναι ψευδοκολώνα. Ο ΧΡΗΣΤΗΣ είναι επίσης μια ψευδοστήλη, αλλά αναφέρεται στον τρέχοντα χρήστη που είναι συνδεδεμένος στη συνεδρία. Χρησιμοποιούνται για την παρακολούθηση αλλαγών που συμβαίνουν στον πίνακα.
33) Πώς βοηθά το ROWID στην ταχύτερη εκτέλεση ενός ερωτήματος;
Το ROWID είναι η λογική διεύθυνση μιας σειράς, δεν είναι φυσική στήλη. Αποτελείται από τον αριθμό του μπλοκ δεδομένων, τον αριθμό αρχείου και τον αριθμό σειράς στο μπλοκ δεδομένων. Έτσι, ο χρόνος εισόδου/εξόδου ελαχιστοποιείται κατά την ανάκτηση της σειράς και οδηγεί σε ταχύτερο ερώτημα.
34) Σε τι χρησιμεύουν οι σύνδεσμοι βάσης δεδομένων;
Οι σύνδεσμοι βάσεων δεδομένων δημιουργούνται για να σχηματίσουν επικοινωνία μεταξύ διαφόρων βάσεων δεδομένων ή διαφορετικών περιβαλλόντων όπως δοκιμή, ανάπτυξη και παραγωγή. Οι σύνδεσμοι της βάσης δεδομένων είναι μόνο για ανάγνωση για πρόσβαση και σε άλλες πληροφορίες.
35) Τι κάνει η ανάκτηση δρομέα;
Η ανάκτηση ενός δρομέα διαβάζει Σύνολο αποτελεσμάτων σειρά προς σειρά.
36) Τι κάνει το κλείσιμο ενός δρομέα;
Το κλείσιμο ενός δρομέα εκκαθαρίζει την ιδιωτική περιοχή SQL καθώς και καταργεί την κατανομή της μνήμης
37) Εξηγήστε τις χρήσεις του αρχείου ελέγχου.
Είναι ένα δυαδικό αρχείο. Καταγράφει τη δομή της βάσης δεδομένων. Περιλαμβάνει τοποθεσίες πολλών αρχείων καταγραφής, ονομάτων και χρονικών σφραγίδων. Μπορούν να αποθηκευτούν σε διαφορετικές τοποθεσίες για να βοηθήσουν στην ανάκτηση πληροφοριών εάν ένα αρχείο καταστραφεί.
38) Εξηγήστε τη Συνέπεια
Η συνέπεια δείχνει ότι τα δεδομένα δεν θα αντικατοπτρίζονται σε άλλους χρήστες μέχρι να δεσμευτούν τα δεδομένα, έτσι ώστε να διατηρείται η συνέπεια.
39) Διαφέρουν μεταξύ ανώνυμων μπλοκ και υποπρογραμμάτων.
Τα ανώνυμα μπλοκ είναι μπλοκ χωρίς όνομα που δεν αποθηκεύονται πουθενά, ενώ τα υποπρογράμματα μεταγλωττίζονται και αποθηκεύονται στη βάση δεδομένων. Μεταγλωττίζονται κατά το χρόνο εκτέλεσης.
40) Διαφέρουν μεταξύ DECODE και CASE.
Οι δηλώσεις DECODE και CASE είναι πολύ παρόμοιες, αλλά το CASE είναι η εκτεταμένη έκδοση του DECODE. Το DECODE δεν επιτρέπει τη λήψη αποφάσεων στη θέση του.
επιλέξτε decode(totalsal=12000,'high',10000,'medium') ως decode_tesr από smp όπου smpno in (10,12,14,16);
Αυτή η δήλωση επιστρέφει ένα σφάλμα.
Το CASE χρησιμοποιείται απευθείας σε PL SQL, αλλά το DECODE χρησιμοποιείται μόνο σε PL SQL μέσω SQL.
41) Εξηγήστε την αυτόνομη συναλλαγή.
Μια αυτόνομη συναλλαγή είναι μια ανεξάρτητη συναλλαγή της κύριας ή μητρικής συναλλαγής. Δεν είναι ένθετο εάν έχει ξεκινήσει από άλλη συναλλαγή.
Υπάρχουν πολλές περιπτώσεις για τη χρήση αυτόνομων συναλλαγών, όπως η καταγραφή συμβάντων και ο έλεγχος.
42) Διαφοροποίηση μεταξύ SGA και PGA.
Το SGA σημαίνει System Global Area ενώ το PGA σημαίνει Global Area Program ή Process. Το PGA έχει εκχωρηθεί μόνο 10% μέγεθος RAM, αλλά στο SGA δίνεται 40% μέγεθος RAM.
43) Ποια είναι η θέση των Pre_defined_functions.
Αποθηκεύονται στην τυπική συσκευασία που ονομάζεται "Λειτουργίες, Διαδικασίες και Πακέτα"
44) Εξηγήστε τον πολυμορφισμό στο PL SQL.
Ο πολυμορφισμός είναι χαρακτηριστικό του OOP. Είναι η δυνατότητα δημιουργίας μιας μεταβλητής, ενός αντικειμένου ή μιας συνάρτησης με πολλαπλές μορφές. Το PL/SQL υποστηρίζει Πολυμορφισμό με τη μορφή υπερφόρτωσης μονάδας προγράμματος μέσα σε μια συνάρτηση μέλους ή πακέτο. Η σαφής λογική πρέπει να αποφεύγεται όσο γίνεται υπερφόρτωση.
45) Ποιες είναι οι χρήσεις του MERGE;
Το MERGE χρησιμοποιείται για τον συνδυασμό πολλαπλών δηλώσεων DML σε μία.
Σύνταξη: συγχώνευση στο όνομα πίνακα
χρήση (ερώτημα)
on (συνθήκη συμμετοχής)
όταν δεν ταιριάζει τότε
Εντολή [εισαγωγή/ενημέρωση/διαγραφή]
όταν ταιριάζουν τότε
Εντολή [εισαγωγή/ενημέρωση/διαγραφή]
Ερωτήσεις συνέντευξης PL/SQL για 5+ χρόνια εμπειρίας
46) Μπορούν να εκτελεστούν 2 ερωτήματα ταυτόχρονα σε ένα σύστημα κατανεμημένης βάσης δεδομένων;
Ναι, μπορούν να εκτελεστούν ταυτόχρονα. Ένα ερώτημα είναι πάντα ανεξάρτητο από το δεύτερο ερώτημα σε ένα κατανεμημένο σύστημα βάσης δεδομένων που βασίζεται στη δέσμευση 2 φάσεων.
47) Εξηγήστε το Raise_application_error.
Είναι μια διαδικασία του πακέτου DBMS_STANDARD που επιτρέπει την έκδοση μηνυμάτων σφάλματος που ορίζονται από το χρήστη από την ενεργοποίηση της βάσης δεδομένων ή το αποθηκευμένο υποπρόγραμμα.
48) Ποια είναι η παράμετρος out που χρησιμοποιείται για ακόμα κι αν η δήλωση return μπορεί να χρησιμοποιηθεί και σε pl/sql;
Οι παράμετροι εξόδου επιτρέπουν περισσότερες από μία τιμές στο πρόγραμμα κλήσης. Η παράμετρος Out δεν συνιστάται στις λειτουργίες. Αν απαιτούνται πολλαπλές τιμές, μπορούν να χρησιμοποιηθούν διαδικασίες αντί για συναρτήσεις. Έτσι, αυτές οι διαδικασίες χρησιμοποιούνται για την εκτέλεση παραμέτρων Out.
49) Πώς θα μετατρέπατε την ημερομηνία σε μορφή ιουλιανής ημερομηνίας;
Μπορούμε να χρησιμοποιήσουμε τη συμβολοσειρά μορφής J:
SQL > επιλέξτε to_char(to_date('29-Mar-2013','dd-mon-yyyy'),'J') ως julian από dual;
JULIAN
50) Εξηγήστε SPOOL
Η εντολή Spool μπορεί να εκτυπώσει την έξοδο των δηλώσεων sql σε ένα αρχείο.
spool/tmp/sql_outtxt
επιλέξτε smp_name, smp_id από smp όπου dept='λογαριασμοί';
καρούλι μακριά?
51) Αναφέρετε από τι αποτελείται το πακέτο PL/SQL;
Ένα πακέτο PL/SQL αποτελείται από
- Πίνακας PL/SQL και καταγράψτε δηλώσεις TYPE
- Διαδικασίες και Λειτουργίες
- Δρομείς
- Μεταβλητές (πίνακες, βαθμοί, εγγραφές, κ.λπ.) και σταθερές
- Ονόματα εξαιρέσεων και πρακτικά για τη συσχέτιση ενός αριθμού σφάλματος με εξαίρεση
- Δρομείς
52) Αναφέρετε ποια είναι τα οφέλη των πακέτων PL/SQL;
Παρέχει πολλά οφέλη όπως
- Επιβεβλημένη απόκρυψη πληροφοριών: Προσφέρει την ελευθερία να επιλέξετε εάν θα διατηρήσετε τα δεδομένα ιδιωτικά ή δημόσια
- Σχέδιο από πάνω προς τα κάτω: Μπορείτε να σχεδιάσετε τη διεπαφή με τον κώδικα που είναι κρυμμένος στο πακέτο πριν εφαρμόσετε πραγματικά τις ίδιες τις μονάδες
- Εμμονή αντικειμένου: Τα αντικείμενα που δηλώνονται σε μια προδιαγραφή πακέτου συμπεριφέρονται σαν καθολικά δεδομένα για όλα τα αντικείμενα PL/SQL στην εφαρμογή. Μπορείτε να τροποποιήσετε το πακέτο σε μια λειτουργική μονάδα και στη συνέχεια να αναφέρετε αυτές τις αλλαγές σε μια άλλη λειτουργική μονάδα
- Αντικειμενοστραφής σχεδιασμός: Το πακέτο δίνει στους προγραμματιστές ισχυρό έλεγχο για το πώς μπορούν να χρησιμοποιηθούν οι μονάδες και οι δομές δεδομένων μέσα στο πακέτο
- Εγγύηση ακεραιότητας συναλλαγής: Παρέχει ένα επίπεδο ακεραιότητας συναλλαγών
- Βελτίωση απόδοσης: Τα Διαχωριστικά RDBMS παρακολουθεί αυτόματα την εγκυρότητα όλων των αντικειμένων του προγράμματος που είναι αποθηκευμένα στη βάση δεδομένων και βελτιώνει την απόδοση των πακέτων.
53) Αναφέρετε ποιες είναι οι διαφορετικές μέθοδοι ανίχνευσης του κώδικα PL/SQL;
Ο κώδικας ανίχνευσης είναι μια κρίσιμη τεχνική για τη μέτρηση της απόδοσης του κώδικα κατά τη διάρκεια του χρόνου εκτέλεσης. Διαφορετικές μέθοδοι ανίχνευσης περιλαμβάνουν
- DBMS_APPLICATION_INFO
- DBMS_TRACE
- DBMS_SESSION και DBMS_MONITOR
- βοηθητικά προγράμματα trcsess και tkproof
54) Αναφέρετε τι κάνει ο ιεραρχικός προφίλ;
Ο ιεραρχικός προγραμματιστής θα μπορούσε να προφίλ των κλήσεων που πραγματοποιήθηκαν σε PL/SQL, εκτός από το να καλύψει το κενό μεταξύ των κενών και των προσδοκιών για την ανίχνευση απόδοσης. Η αποτελεσματικότητα του ιεραρχικού προφίλ περιλαμβάνει
- Διακεκριμένη αναφορά για SQL και κατανάλωση χρόνου PL/SQL
- Οι αναφορές καταμετρούν τις κλήσεις διακριτών υποπρογραμμάτων που πραγματοποιήθηκαν στο PL/SQL και τον χρόνο που αφιερώθηκε σε κάθε κλήση υποπρογράμματος
- Πολλαπλές διαδραστικές αναφορές αναλυτικών στοιχείων σε μορφή HTML χρησιμοποιώντας το βοηθητικό πρόγραμμα γραμμής εντολών
- Πιο αποτελεσματικό από το συμβατικό προφίλτρο και άλλα βοηθητικά προγράμματα εντοπισμού
55) Αναφέρετε τι σας επιτρέπει να κάνετε τα μηνύματα PLV;
Το μήνυμα PLV σας δίνει τη δυνατότητα
- Αντιστοιχίστε μεμονωμένο μήνυμα κειμένου σε καθορισμένη σειρά στον πίνακα PL/SQL
- Ανακτά το κείμενο του μηνύματος κατά αριθμό
- Αντικαθιστά αυτόματα τα δικά σας μηνύματα με standard Oracle μηνύματα λάθους με περιορισμό εναλλαγής
- Μαζική φόρτωση αριθμών μηνυμάτων και κειμένου από έναν πίνακα βάσης δεδομένων απευθείας πίνακα μηνυμάτων PLV PL/SQL
56) Αναφέρετε τι προσφέρει το πακέτο PLV (PL/Vision);
- Μηδενική τιμή αντικατάστασης
- Σύνολο ρουτίνες διεκδίκησης
- Διάφορα βοηθητικά προγράμματα
- Σύνολο σταθερών που χρησιμοποιούνται σε όλη την όραση PL
- Προκαθορισμένοι τύποι δεδομένων
57) Αναφέρετε ποια είναι η χρήση των PLVprs και PLVprsps;
- PLVprs: Είναι μια επέκταση για ανάλυση συμβολοσειρών για PL/SQL και είναι το χαμηλότερο επίπεδο λειτουργικότητας ανάλυσης συμβολοσειρών
- PLVprsps: Είναι το πακέτο υψηλότερου επιπέδου για την ανάλυση του πηγαίου κώδικα PL/SQL σε ξεχωριστά atomics. Βασίζεται σε άλλα πακέτα ανάλυσης για να ολοκληρώσει τη δουλειά.
58) Εξηγήστε πώς μπορείτε να αντιγράψετε ένα αρχείο σε περιεχόμενο αρχείου και αρχείο στον πίνακα PL/SQL εκ των προτέρων PL/SQL;
Με μία κλήση προγράμματος - "διαδικασία fcopy”, μπορείτε να αντιγράψετε τα πλήρη περιεχόμενα ενός αρχείου σε ένα άλλο αρχείο. Ενώ για να αντιγράψετε τα περιεχόμενα ενός αρχείου απευθείας σε έναν πίνακα PL/SQL, μπορείτε να χρησιμοποιήσετε το πρόγραμμα "file2pstab".
59) Εξηγήστε πώς γίνεται ο χειρισμός εξαιρέσεων εκ των προτέρων PL/SQL;
Για χειρισμός εξαίρεσης PL/SQL παρέχει ένα αποτελεσματικό πρόσθετο PLVexc. Το PLVexc υποστηρίζει τέσσερις διαφορετικές ενέργειες χειρισμού εξαιρέσεων.
- Συνεχίστε την επεξεργασία
- Καταγράψτε και μετά συνεχίστε
- Σταματήστε την επεξεργασία
- Καταγράψτε και μετά σταματήστε την επεξεργασία
Για τις εξαιρέσεις που επαναλαμβάνονται, μπορείτε να χρησιμοποιήσετε την πρόταση RAISE.
60) Αναφέρετε ποιο πρόβλημα μπορεί να αντιμετωπίσει κάποιος κατά την εγγραφή πληροφοριών καταγραφής σε έναν πίνακα βάσης δεδομένων σε PL/SQL;
Κατά την εγγραφή πληροφοριών καταγραφής σε έναν πίνακα βάσης δεδομένων, το πρόβλημα που αντιμετωπίζετε είναι ότι οι πληροφορίες είναι διαθέσιμες μόνο όταν οι νέες σειρές δεσμευτούν στη βάση δεδομένων. Αυτό μπορεί να είναι πρόβλημα, καθώς αυτό το PLVlog συνήθως αναπτύσσεται για την παρακολούθηση σφαλμάτων και σε πολλές τέτοιες περιπτώσεις η τρέχουσα συναλλαγή θα αποτύγχανε ή θα χρειαζόταν με άλλο τρόπο μια επαναφορά.
61) Αναφέρετε ποια είναι η συνάρτηση που χρησιμοποιείται για τη μεταφορά ενός αρχείου καταγραφής πίνακα PL/SQL σε έναν πίνακα βάσης δεδομένων;
Για να μεταφέρετε έναν πίνακα καταγραφής PL/SQL μια συνάρτηση πίνακα καταγραφής βάσης δεδομένων "ΔΙΑΔΙΚΑΣΙΑ ps2db" χρησιμοποιείται.
62) Πότε πρέπει να χρησιμοποιήσετε ένα προεπιλεγμένο σημείο αποθήκευσης "επαναφορά σε" του PLVlog;
Το προεπιλεγμένο σημείο αποθήκευσης "επαναφορά σε" του PLVlog χρησιμοποιείται όταν οι χρήστες έχουν ενεργοποιήσει τη δραστηριότητα επαναφοράς και δεν έχουν παράσχει εναλλακτικό σημείο αποθήκευσης στην κλήση στο put_line. Το προεπιλεγμένο σημείο αποθήκευσης αρχικοποιείται στη σταθερά c none.
63) Γιατί το PLVtab θεωρείται ως ο ευκολότερος τρόπος πρόσβασης στον πίνακα PL/SQL;
Ο πίνακας PL/SQL είναι ο πιο κοντινός σε πίνακες στο PL/SQL και για να αποκτήσετε πρόσβαση σε αυτόν τον πίνακα πρέπει πρώτα να δηλώσετε έναν τύπο πίνακα και μετά να δηλώσετε τον ίδιο τον πίνακα PL/SQL. Αλλά χρησιμοποιώντας το PLVtab, μπορείτε να αποφύγετε τον ορισμό του δικού σας τύπου πίνακα PL/SQL και να κάνετε εύκολη την πρόσβαση σε πίνακα δεδομένων PL/SQL.
64) Αναφέρετε τι σας επιτρέπει να κάνετε το PLVtab όταν εμφανίζετε τα περιεχόμενα των πινάκων PL/SQL;
Το PLVtab σάς δίνει τη δυνατότητα να κάνετε τα ακόλουθα πράγματα όταν εμφανίζετε τα περιεχόμενα των πινάκων PL/SQL
- Εμφάνιση ή απόκρυψη κεφαλίδας για τον πίνακα
- Εμφανίστε ή αποκρύψτε τους αριθμούς σειρών για τις τιμές του πίνακα
- Δείξτε ένα πρόθεμα πριν από κάθε σειρά του πίνακα
65) Εξηγήστε πώς μπορείτε να αποθηκεύσετε ή να τοποθετήσετε το μήνυμα σας σε έναν πίνακα;
Για να αποθηκεύσετε μηνύματα σε έναν πίνακα, μπορείτε να το κάνετε με δύο τρόπους
- Φόρτωση μεμονωμένων μηνυμάτων με κλήσεις προς το
add_text
διαδικασία - Φόρτωση συνόλων μηνυμάτων από έναν πίνακα βάσης δεδομένων με το
load_from_dbms
διαδικασία
66) Αναφέρετε ποια είναι η χρήση της συνάρτησης “module procedure” σε PL/SQL;
Η «διαδικασία μονάδας» επιτρέπει τη μετατροπή όλων των γραμμών κώδικα σε μια συγκεκριμένη μονάδα προγράμματος με μία κλήση διαδικασίας. Υπάρχουν τρία επιχειρήματα για τις ενότητες
- module_in
- cor_in
- Last_module_in
67) Αναφέρετε τι κάνει τα PLVcmt και PLVrb στο PL/SQL;
Το PL/Vision προσφέρει δύο πακέτα που σας βοηθούν να διαχειριστείτε την επεξεργασία συναλλαγών στην εφαρμογή PL/SQL. Είναι PLVcmt και PLVrb.
- PLVcmt: Το πακέτο PLVcmt περικλείει τη λογική και την πολυπλοκότητα για την αντιμετώπιση της επεξεργασίας δέσμευσης
- PLVrb: Παρέχει μια διεπαφή προγραμματισμού για επαναφορά δραστηριότητας σε PL/SQL
Αυτές οι ερωτήσεις συνέντευξης θα βοηθήσουν επίσης στο viva (προφορικά) σας