Her er en samling af de mest almindeligt stillede oracle plsql-interviewspørgsmål. Disse vil helt sikkert hjælpe dig i interviewet. Spørgsmålene er fra grundlæggende til avancerede niveauer og dækker de fleste aspekter af PLSQL-programmeringen. Jeg håber, du finder dette nyttigt
Spørgsmål (1) Hvad er Oracle PLSQL?
Svar
PL/SQL er en proceduremæssig sprogudvidelse til Structured Query Language (SQL). Formålet med PL/SQL er at kombinere databasesprog og proceduremæssigt programmeringssprog
Spørgsmål(2) Hvad er komponenterne i en PL/SQL-blok?
Svar
Deklarativ del, eksekverbar del og undtagelsesdel.
Spørgsmål (3) Hvilke datatyper er tilgængelige i PL/SQL?
Svar
Nogle skalære datatyper såsom
NUMBER, VARCHAR2, DATE, CHAR, LONG, BOOLEAN.
Nogle sammensatte datatyper såsom RECORD &TABLE.
Spørgsmål (4) Hvad er en markør? Hvorfor er markør påkrævet?
Svar
Markøren er et navngivet privat SQL-område, hvorfra der er adgang til information.
Markører er påkrævet for at behandle rækker individuelt for forespørgsler, der returnerer flere rækker.
Spørgsmål (5) Hvad er forskellen mellem procedure og funktion?
Svar
Funktion | Procedure |
Funktionen skal returnere en værdi | Proceduren behøver ikke |
Syntaks FUNKTIONSnavn (argumentliste …..) Returdatatypen er lokale variabeldeklarationer Begynd eksekverbare sætninger Undtagelse udførelsesbehandlere End; | Syntaks PROCEDUREnavn (parameterliste…..) er lokale variabeldeklarationer BEGIN Eksekverbare sætninger. Undtagelse. undtagelsesbehandlere ende; |
Funktionen kan bruges i SQL med nogle begrænsninger | Proceduren kan ikke kaldes direkte fra SQL. |
Spørgsmål (6) Hvad er forskellen mellem DELETE og TRUNCATE?
Svar
Slet | Trunkeret |
DELETE er en DML-kommando | TRUNCATE er en DDL-kommando. |
Syntaks Slet * fra tabellen Bekræft; | Syntaks Trunker tabel |
Det ændrer ikke på højvandsmærket | TRUNCATE genindstil hukommelsesblokkene efter udførelse, dvs. den indstiller objektets højvandsmærke |
Den kan rulles tilbage | Den kan ikke rulles tilbage |
Sletningsudløseren udløses | Ingen udløsere udløses |
Rullback-segmenter bruges | Der bruges færre rollback-segmenter, og det er meget hurtigere |
Spørgsmål (7) Hvad er implicit markør og eksplicit markør?
Svar
Implicit markør | Eksplicit markør |
Implicit markør er defineret og kontrolleret af Oracle internt. | Eksplicit markør er defineret og styret programmatisk. |
Syntaks erklær v_dept varchar2(50); begynd vælg afd. i v_dept fra afd. hvor placering ='XYZ'; slut; | Syntaks erklær v_dept varchar2(50); Cursor Cur_dept er valgt afd. til v_dept fra afd. hvor placering ='XYZ'; begynd Åben Cur_dept; Hent Cur_dept til v_dept; Luk Cur_dept; slut; |
Al udvælgelse/opdateringsforespørgsel, der bruges i PL/SQL-blok, er en implicit markør | Eksplicit markør er åben, hent og luk |
Spørgsmål (8) Hvad er rowid og rownum?
Svar
Rowid er et hexadecimalt unikt tal for hver række i en tabel, der bruges til søgning.
Rownum er et unikt heltal for hver række i en tabel, der kan bruges til sortering eller analyse.
Spørgsmål (9) Forklar forskellen mellem en FUNKTION, PROCEDURE og PAKKE
Svar
Funktion | -En funktion har en returtype i sin specifikation og skal returnere en værdi specificeret i den type. -De er gemt i kompileret form i databasen – Funktioner kan kaldes hvor som helst i en gyldig udtryk Vælg fnd_profile.value('xyz) fra dual; |
Procedure | -En procedure har ikke en returtype i sin specifikation og bør ikke returnere nogen værdi, men den kan have en retursætning, der simpelthen stopper dens udførelse og returnerer til den, der ringer -De er gemt i kompileret form i databasen -Procedurer kaldes som stand-alone eksekverbare sætninger:my_proc(parameter1,parameter2…); |
Pakker | -Pakker indeholder funktioner, procedurer og andre datastrukturer. – Fordelene ved pakker er modularitet, lettere applikationsdesign og information. Skjuling, genanvendelighed og bedre ydeevne. -Der er en række forskelle mellem pakkede og ikke-pakkede PL/SQL-programmer. Pakke Dataene i pakken er vedvarende i varigheden af brugerens session. Dataene i pakken eksisterer således på tværs af commits i sessionen. -Hvis du giver execute privilege på en pakke, er det for alle funktioner og procedurer, og datastrukturer i pakkespecifikationen. Du kan ikke tildele privilegier på kun én procedure eller funktion i en pakke.-Du kan overbelaste procedurer og funktioner i en pakke, der erklærer flere programmer med samme navn. Det korrekte program, der skal kaldes, bestemmes under kørsel, baseret på antallet af datatyper for parametrene. |
Spørgsmål (10) Definer Commit, Rollback og Save-point.
Svar.
Forpligtelse | Commit bruges til at gøre transaktionen permanent Følgende ting sker, når en commit udføres a)Alt arbejde udført af transaktionen bliver permanent. b)Andre brugere kan se ændringer i data foretaget af transaktionen. c )Eventuelle låse erhvervet ved transaktionen frigives. |
Tilbage | Tilbageføring bruges til at fortryde transaktionen . Følgende ting sker, når en tilbagerulning udføres a)Alt arbejde udført af transaktionen fortrydes, som om det ikke var blevet udstedt. b) Eventuelle låse erhvervet af transaktionen frigives . |
Savepoint | Et SAVEPOINT er et punkt i en transaktion, hvor du kan rulle transaktionen tilbage til et bestemt punkt uden at rulle hele transaktionen tilbage. |
Spørgsmål (11) Hvad er SQLCODE og SQLERRM, og hvorfor er de vigtige for PL/SQL-udviklere?
Svar
SQLCODE returnerer værdien af fejlnummeret for den sidst stødte fejl. SQLERRM returnerer den faktiske fejlmeddelelse for den sidst stødte fejl. De kan bruges i undtagelseshåndtering til at rapportere, eller lagre i en fejllogtabel, den fejl, der opstod i koden. Disse er især nyttige for undtagelsen WHEN OTHERS.
Spørgsmål (12) Hvordan kan du finde i en PL/SQL-blok, hvis en markør er åben?
Svar
Brug %ISOPEN cursorstatusvariablen.
Spørgsmål (13) Hvordan kan du generere fejlfindingsoutput fra PL/SQL?
Svar
Brug DBMS_OUTPUT-pakken. En anden mulig metode er blot at bruge kommandoen SHOW ERROR, men denne viser kun fejl. DBMS_OUTPUT-pakken kan bruges til at vise mellemresultater fra sløjfer og status for variabler, når proceduren udføres. Den nye pakke UTL_FILE kan også bruges.
Spørgsmål (14) Hvad er PL/SQL-undtagelser?
Svar
Nogle af dem er
1.Too_many_rows
2.No_Data_Found
3.Value_error
4.Zero_error osv.
Spørgsmål (15) Hvad er det maksimale antal udløsere, du kan anvende på en enkelt tabel?
Svar
12 udløsere.
Spørgsmål (16) Hvad er de to dele af pakken?
Svar
De to dele er pakkespecifikation og pakketekst
De består af pakkespecifikation, som indeholder funktionsheadere, procedureheadere og eksternt synlige datastrukturer. Pakketeksten indeholder deklarations-, eksekverbare- og undtagelseshåndteringssektionerne for alle de medfølgende procedurer og funktioner.
Spørgsmål (17) Hvad er overbelastning af procedurer?
Svar
Gentagelse af samme procedurenavn med en anden parameterliste
Spørgsmål (18) Hvad er de parametre, der kan overføres til en procedure?
Svar
IN, OUT, IN-OUT parametre.
Spørgsmål (19) Hvilken kommando ville du bruge til at kryptere en PL/SQL-applikation?
Svar
WRAP
Spørgsmål (20) Hvor mange typer triggere findes der i PL/SQL?
Svar
Der er 12 typer af triggere i PL/SQL, der indeholder kombinationen af FØR, EFTER, RÆKKE, TABEL, INSERT, OPDATERING, SLET og ALLE søgeord.
◦FØR ALLE RÆKKER INDSÆT
◦ EFTER ALLE RÆKKEINDSÆTNING
◦FØR INDSÆTNING
◦EFTER INDSÆTNING osv.
Spørgsmål (21) Navngiv de tabeller, hvor karakteristika for pakke, procedure og funktioner er gemt?
Svar
dba_objects, dba_Source og dba_error.
eller
user_objects,user_Source og user_error.
Spørgsmål (22) Hvad er gemt procedure?
Svar
En lagret procedure er en sekvens af sætninger eller en navngivet PL/SQL-blok, der udfører en eller flere specifikke funktioner. Det ligner en procedure i andre programmeringssprog. Det er gemt i databasen og kan udføres gentagne gange. Det gemmes som et skemaobjekt. Det kan indlejres, fremkaldes og parametreres.
Spørgsmål (23) Hvordan udfører man en lagret procedure?
Svar
Der er to måder at udføre en lagret procedure på.
Skriv EXECUTE eller EXEC fra SQL-prompten efterfulgt af procedurenavn
Spørgsmål (24) Hvad er Raise_application_error?
Svar
Raise_application_error er en procedure i pakken DBMS_STANDARD, som tillader udsendelse af brugerdefinerede fejlmeddelelser fra lagret underprogram eller databaseudløser.
Spørgsmål (25) Hvad er Pragma EXECPTION_INIT? Forklar brugen?
Svar
PRAGMA EXCEPTION_INIT fortæller compileren at associere en undtagelse med en orakelfejl. For at få en fejlmeddelelse om en specifik oracle-fejl.
for eksempel. PRAGMA EXCEPTION_INIT (undtagelsesnavn, orakelfejlnummer)
Håber du kan lide denne samling af Oracle PlSQL-interviewspørgsmål. Jeg vil poste flere sådanne spørgsmål i fremtiden
Relaterede links
Oracle-apps interviewspørgsmål og svar
oracle dba interviewspørgsmål
Spørgsmål til Oracle RAC-interview
Weblogic Interview spørgsmål
Håber du kan lide samlingen af oracle plsql-interviewspørgsmål. Giv venligst feedback