sql >> Databasteknik >  >> RDS >> Oracle

oracle PLSQL intervjufrågor

Här är sammanställningen av de vanligaste oracle plsql-intervjufrågorna. Dessa kommer säkert att hjälpa dig i intervjun. Frågorna är från grundläggande till avancerad nivå och täcker de flesta aspekterna av PLSQL-programmering. Jag hoppas att du har nytta av detta

Fråga (1) Vad är Oracle PLSQL?
Svar
PL/SQL är en processuell språktillägg till Structured Query Language (SQL). Syftet med PL/SQL är att kombinera databasspråk och procedurprogrammeringsspråk


Fråga(2) Vilka är komponenterna i ett PL/SQL-block?
Svar
Deklarativ del, exekverbar del och undantagsdel.

Fråga (3) Vilka datatyper finns tillgängliga i PL/SQL?
Svar
Vissa skalära datatyper som
NUMBER, VARCHAR2, DATE, CHAR, LONG, BOOLEAN.
Vissa sammansatta datatyper som RECORD &TABLE.

Fråga (4) Vad är en markör? Varför krävs markör?
Svara
Markören är ett namngivet privat SQL-område varifrån information kan nås.
Markörer krävs för att behandla rader individuellt för frågor som returnerar flera rader.

Fråga (5)  Vad är skillnaden mellan procedur och funktion?
Svar

Funktion Procedur
Funktionen måste returnera ett värde Procedur behöver inte
Syntax 
FUNKTIONSnamn (argumentlista …..) Returdatatyp är
lokala variabeldeklarationer
Begin
körbara satser
Undantag
exekveringshanterare
Sluta;
Syntax
PROCEDURnamn (parameterlista…..)
är
lokala variabeldeklarationer
BEGIN
Körbara uttalanden.
Undantag.
undantagshanterare
slut;
Funktionen kan användas i SQL med vissa begränsningar Proceduren kan inte anropas direkt från SQL.

Fråga (6) Vad är skillnaden mellan DELETE och TRUNCATE?
Svara

Ta bort Trunkera
DELETE är ett DML-kommando TRUNCATE är ett DDL-kommando.
Syntax 
Ta bort * från tabellen
Bekräfta;
Syntax
Trunkera tabell ;
Det ändrar inte högvattenmärket TRUNCATE återställ minnesblocken efter exekvering, dvs den ställer in högvattenmärket för objektet
Det kan återställas Den kan inte återställas
Ta bort utlösare aktiveras Inga utlösare kommer att aktiveras
Återställningssegment används Färre återställningssegment används och det är mycket snabbare

Fråga (7) Vad är implicit markör och explicit markör?
Svar

Implicit markör Explicit markör
Implicit markör definieras och kontrolleras av Oracle internt. Explicit markör definieras och styrs programmässigt.
Syntax 
deklarera
v_dept varchar2(50);
börja
välj avd till v_dept från avd där plats ='XYZ';
slut;
Syntax
deklarera
v_dept varchar2(50);
Markör Cur_dept väljs avd till v_dept från avd där plats ='XYZ';
börja
Öppna Cur_dept;
Hämta Cur_dept till v_dept;
Stäng Cur_dept;
slut;
Alla urvals-/uppdateringsfrågor som används i PL/SQL-block är en implicit markör Explicit markör är öppen, hämta och stäng

Fråga (8) Vad är rowid och rownum?
Svar
Rowid är ett hexadecimalt unikt tal för varje rad i en tabell som används för sökning.
Rownum är ett unikt heltal för varje rad i en tabell som kan användas för sortering eller analys.

Fråga (9)  Förklara skillnaden mellan en FUNKTION, PROCEDUR och PAKET
Svar

Funktion -En funktion har en returtyp i sin specifikation och måste returnera ett värde specificerat i den typen.
-De lagras i kompilerad form i databasen
– Funktioner kan anropas var som helst i en giltig expression
Välj fnd_profile.value('xyz)  från dual;
Procedur -En procedur har ingen returtyp i sin specifikation och bör inte returnera något värde, men den kan ha en retursats som helt enkelt stoppar dess exekvering och återgår till den som ringer
-De lagras i kompilerad form i databasen
-Procedurer kallas som fristående körbara satser:my_proc(parameter1,parameter2…);
Paket -Paket innehåller funktioner, procedurer och andra datastrukturer.
– Fördelarna med paket är modularitet, enklare applikationsdesign och information.
Döljning, återanvändbarhet och bättre prestanda.
-Det finns ett antal skillnader mellan paketerade och icke-paketerade PL/SQL-program.
Paket Datan i paketet är beständig under användarens session. Datan i paketet finns alltså över commits i sessionen.
-Om du beviljar exekveringsbehörighet på ett paket så är det för alla funktioner och procedurer, och datastrukturer i paketspecifikationen. Du kan inte ge privilegier på endast en procedur eller funktion i ett paket.-Du kan överbelasta procedurer och funktioner i ett paket, deklarera flera program med samma namn. Det korrekta programmet som ska anropas avgörs vid körning, baserat på antalet datatyper för parametrarna.

Fråga (10)   Definiera Commit, Rollback och Save-point.

Svara.

Bekräfta Commit används för att göra transaktionen permanent
Följande saker händer när en commit utförs
a)Allt arbete som utförs av transaktionen blir permanent.
b)Andra användare kan se ändringar i data som gjorts av transaktionen.
c )Alla lås som förvärvats genom transaktionen släpps.
Återställ Återställning används för att ångra transaktionen .
Följande saker händer när en återställning utförs
a) Allt arbete som utförs av transaktionen ångras som om det inte hade utfärdats.
b) Alla lås som förvärvats av transaktionen släpps .
Savepoint En SAVEPOINT är en punkt i en transaktion när du kan rulla tillbaka transaktionen till en viss punkt utan att rulla tillbaka hela transaktionen.

Fråga (11)  Vad är SQLCODE och SQLERRM och varför är de viktiga för PL/SQL-utvecklare?
Svar

SQLCODE returnerar värdet på felnumret för det senaste felet som påträffades. SQLERRM returnerar det faktiska felmeddelandet för det senaste felet som påträffades. De kan användas i undantagshantering för att rapportera, eller, lagra i en felloggtabell, felet som uppstod i koden. Dessa är särskilt användbara för undantaget WHEN OTHERS.

Fråga (12) Hur kan du hitta inom ett PL/SQL-block om en markör är öppen?
Svar
Använd markörstatusvariabeln %ISOPEN.

Fråga (13) Hur kan du generera felsökningsutdata från PL/SQL?
Svar
Använd paketet DBMS_OUTPUT. En annan möjlig metod är att bara använda kommandot SHOW ERROR, men detta visar bara fel. Paketet DBMS_OUTPUT kan användas för att visa mellanliggande resultat från loopar och status för variabler när proceduren exekveras. Det nya paketet UTL_FILE kan också användas.

Fråga (14) Vad är PL/SQL-undantag?
Svar
Några av dem är
1.Too_many_rows
2.No_Data_Found
3.Value_error
4.Zero_error etc.

Fråga (15) Vilket är det maximala antalet utlösare som du kan använda på en enda tabell?
Svar
12 utlösare.

Fråga (16) Vilka är de två delarna av paketet?
Svar
De två delarna är paketspecifikation och paketkropp
De består av paketspecifikation, som innehåller funktionsrubriker, procedurrubriker och externt synliga datastrukturer. Paketets kropp innehåller deklarations-, körbara och undantagshanteringssektioner för alla de medföljande procedurerna och funktionerna.

Fråga (17) Vad är överbelastning av procedurer?
Svar
Upprepa samma procedurnamn med en annan parameterlista

Fråga (18) Vilka är parametrarnas lägen som kan skickas till en procedur?
Svar
IN, OUT, IN-OUT parametrar.

Fråga (19) Vilket kommando skulle du använda för att kryptera en PL/SQL-applikation?
Svar
WRAP

Fråga (20) Hur många typer av triggers finns i PL/SQL?
Svar
Det finns 12 typer av utlösare i PL/SQL som innehåller kombinationen FÖRE, EFTER, RAD, TABELL, INFOGA, UPPDATERA, DELETE och ALLA nyckelord.
◦FÖR ALLA RADER INFOGA
◦ EFTER ALLA INFOGA RAD
◦FÖR INFOGA
◦ EFTER INFOGA osv.

Fråga (21) Namnge tabellerna där egenskaper för paket, procedur och funktioner lagras?
Answer
dba_objects, dba_Source och dba_error.
eller
user_objects,user_Source och user_error.

Fråga (22) Vad är lagrad procedur?
Svara
En lagrad procedur är en sekvens av satser eller ett namngivet PL/SQL-block som utför en eller flera specifika funktioner. Det liknar en procedur i andra programmeringsspråk. Det lagras i databasen och kan köras upprepade gånger. Det lagras som ett schemaobjekt. Den kan kapslas, anropas och parametriseras.

Fråga (23) Hur kör man en lagrad procedur?
Svar
Det finns två sätt att utföra en lagrad procedur.
Från SQL-prompten, skriv EXECUTE eller EXEC följt av procedure_name

Fråga (24) Vad är Raise_application_error?
Svar
Raise_application_error är en procedur för paketet DBMS_STANDARD som gör det möjligt att utfärda användardefinierade felmeddelanden från lagrade underprogram eller databasutlösare.

Fråga (25) Vad är Pragma EXECPTION_INIT? Förklara användningen?
Svar
PRAGMA EXCEPTION_INIT säger åt kompilatorn att associera ett undantag med ett orakelfel. För att få ett felmeddelande om ett specifikt orakelfel.

t.ex. PRAGMA EXCEPTION_INIT (undantagsnamn, orakelfelnummer)

Hoppas du gillar den här sammanställningen av Oracle PlSQL-intervjufrågor. Jag kommer att lägga upp fler sådana frågor i framtiden

Relaterade länkar

Oracle-appar intervjufrågor och svar

oracle dba intervjufrågor

Oracle RAC-intervjufrågor

Weblogic Intervjufrågor

Hoppas du gillar sammanställningen av oracle plsql-intervjufrågor. Lämna gärna feedbacken


  1. Åtkomst med Microsoft SQL Server – Importera stora datamängder med SSIS

  2. Hur kör man en lagrad procedur i sql-servern varje timme?

  3. Hur man programmatiskt genererar DDL från Oracle-databas?

  4. 10 ovanliga Microsoft Access 2019-tips