top oracle interview questions
Vanliga Oracle-intervjufrågor och svar:
Topp 40 Oracle-intervjufrågor tillsammans med svar som täcker nästan alla Oracle-grundläggande begrepp.
Detta är en fördjupad serie som täcker nästan alla Oracle-intervjufrågor:
Del 1: Oracle Basic, SQL, PL / SQL Frågor (Denna artikel)
Del 2: Oracle DBA, RAC och Performance Tuning Frågor
Del 3: Oracle Forms and Reports Intervjufrågor
Del 4: Oracle Apps och Oracle SOA Tekniska intervjufrågor
Låt oss börja med första artikeln i serien.
Typer av frågor som behandlas i den här artikeln:
- Grundläggande Oracle-intervjufrågor
- Oracle SQL-intervjufrågor
- Oracle PL / SQL-intervjufrågor
Du hittar grunderna i Oracle förklarade med enkla exempel för din förståelse. Om du planerar att delta i en Oracle-intervju kommer dessa frågor som behandlas i den här artikeln definitivt till stor hjälp.
Låt oss fortsätta!!
Lista över de bästa Oracle-intervjufrågorna
F # 1) Vad är Oracle och vad är dess olika utgåvor?
Svar: Oracle är en av de populära databaserna som tillhandahålls av Oracle Corporation, som arbetar med relationshanteringskoncept och därför kallas det också Oracle RDBMS. Det används i stor utsträckning för online-transaktionsbehandling, datalagring och datorbaserad databehandling.
F # 2) Hur identifierar du Oracle Database Software Release?
Svar: Oracle följer ett antal format för varje release.
Till exempel ,
Släpp 10.1.0.1.1 kan kallas:
10: Stora DB-utgivningsnummer
ett: DB-underhållsutgivningsnummer
0: Applikationsservers utgivningsnummer
ett: Komponentspecifikt släppnummer
ett: Plattformsspecifikt släppnummer
bästa spionapp för mobiltelefon
F # 3) Hur skiljer du mellan VARCHAR och VARCHAR2?
Svar: Både VARCHAR och VARCHAR2 är Oracle-datatyper som används för att lagra teckensträngar med variabel längd. Deras skillnader är:
- VARCHAR kan lagra tecken upp till 2000 byte medan VARCHAR2 kan lagra upp till 4000 byte.
- VARCHAR kommer att hålla utrymmet för tecken som definierats under deklarationen även om alla inte används medan VARCHAR2 kommer att frigöra det oanvända utrymmet.
F # 4) Vad är skillnaden mellan TRUNCATE & DELETE-kommandot?
Svar: Båda kommandona används för att ta bort data från databasen.
Skillnaden mellan de två inkluderar:
- TRUNCATE är en DDL-operation medan DELETE är en DML-operation.
- TRUNCATE tar bort alla rader men lämnar tabellstrukturen intakt. Det kan inte rullas tillbaka eftersom det utfärdar COMMIT före och efter kommandokörningen medan DELETE-kommandot kan rullas tillbaka.
- TRUNCATE-kommandot frigör objektets lagringsutrymme medan kommandot RADERA inte gör det.
- TRUNCATE går snabbare jämfört med DELETE.
F # 5) Vad menas med RAW-datatyp?
Svar: RAW-datatyp används för att lagra binära data med variabel längd eller byte-strängar.
Skillnaden mellan RAW & VARCHAR2-datatyp är att PL / SQL inte känner igen den här datatypen och därför inte kan göra några konverteringar när RAW-data överförs till olika system. Denna datatyp kan bara ifrågasättas eller infogas i en tabell.
Syntax: RAW (precision)
F # 6) Vad menas med Joins? Lista typer av anslutningar.
Svar: Joins används för att extrahera data från flera tabeller med hjälp av några vanliga kolumner eller villkor.
Det finns olika typer av kopplingar som listas nedan:
- INRE KOPPLING
- YTTRE GÅNG
- CROSS JOINS eller CARTESIAN PRODUCT
- EQUI GÅR MED
- ANTI GÅ MED
- SEMI GÅR MED
F # 7) Vad är skillnaden mellan SUBSTR & INSTR-funktioner?
Svar:
- SUBSTR-funktionen returnerar den del som identifierats av numeriska värden från den angivna strängen.
- Till exempel , (VÄLJ SUBSTR (”Indien är mitt land”, 1, 4) från dubbla) returnerar “Indi”.
- INSTR returnerar understrängens positionsnummer i strängen.
- Till exempel , (VÄLJ INSTRUKTION (”Indien är mitt land”, “a”) från dubbla) returnerar 5.
F # 8) Hur kan vi ta reda på de dubbla värdena i en Oracle-tabell?
Svar: Vi kan använda frågan nedan för att hämta dubbletterna.
SELECT EMP_NAME, COUNT (EMP_NAME) FROM EMP GROUP BY EMP_NAME HAVING COUNT (EMP_NAME) > 1;
F # 9) Hur gör ON-DELETE-CASCADE uttalandet arbete?
Svar: Användning PÅ RADERA CASCADE raderar automatiskt en post i underordnade tabellen när samma tas bort från modertabellen. Detta uttalande kan användas med utländska nycklar.
Vi kan lägga till ON DELETE CASCADE-alternativet på en befintlig tabell med hjälp av nedanstående uppsättning kommandon.
Syntax:
ALTER TABLE CHILD_T1 ADD CONSTRAINT CHILD_PARENT_FK REFERENCES PARENT_T1 (COLUMN1) ON DELETE CASCADE;
F # 10) Vad är en NVL-funktion? Hur kan den användas?
Svar: NVL är en funktion som hjälper användaren att ersätta värde om null påträffas för ett uttryck.
Den kan användas som nedanstående syntax.
NVL (Value_In, Replace_With)
F # 11) Vad är skillnaden mellan en primär nyckel och en unik nyckel?
Svar: Primär nyckel används för att identifiera varje tabellrad unikt, medan en unik nyckel förhindrar dubbla värden i en tabellkolumn.
Nedan följer några skillnader:
- Primärnyckeln kan bara vara en på bordet medan unika nycklar kan vara flera.
- Den primära nyckeln kan inte innehålla nollvärde alls medan den unika nyckeln tillåter flera nollvärden.
- Den primära nyckeln är ett klustrat index medan en unik nyckel är ett icke-klusterat index.
F # 12) Hur TRANSLATE-kommandot skiljer sig från REPLACE?
Svar: TRANSLATE-kommandot översätter tecken en efter en i den angivna strängen med substitutionstecknet. REPLACE-kommandot ersätter ett tecken eller en uppsättning tecken med en komplett substitutionssträng.
Till exempel:
TRANSLATE (‘Missisippi’,’is’,’15) => M155151pp1 REPLACE (‘Missisippi’,’is’,’15) => M15s15ippi
F # 13) Hur kan vi ta reda på aktuellt datum och tid i Oracle?
Svar: Vi kan hitta aktuellt datum och tid med hjälp av SYSDATE-kommandot i Oracle.
Syntax:
SELECT SYSDATE into CURRENT_DATE from dual;
F # 14) Varför använder vi COALESCE-funktionen i Oracle?
Svar: COALESCE-funktionen används för att returnera det första icke-null-uttrycket från listan över argument som ges i uttrycket. Det måste finnas minst två argument i ett uttryck.
Syntax:
COALESCE (expr 1, expr 2, expr 3…expr n)
F # 15) Hur ska du skriva en fråga för att få 5: e RANK-studenter från tabellen STUDENT_REPORT?
Svar: Frågan kommer att vara som följer:
SELECT TOP 1 RANK FROM (SELECT TOP 5 RANK FROM STUDENT_REPORT ORDER BY RANK DESC) AS STUDENT ORDER BY RANK ASC;
F # 16) När använder vi GROUP BY-satsen i SQL Query?
Svar: GROUP BY-satsen används för att identifiera och gruppera data efter en eller flera kolumner i frågeresultaten. Denna klausul används ofta med aggregerade funktioner som COUNT, MAX, MIN, SUM, AVG, etc.
Syntax:
SELECT COLUMN_1, COLUMN_2 FROM TABLENAME WHERE (condition) GROUP BY COLUMN_1, COLUMN_2
F # 17) Vad är det snabbaste sättet att hämta data från en tabell?
Svar: Det snabbaste sättet att hämta data skulle vara att använda ROWID i SQL-frågan.
F # 18) Var använder vi DECODE- och CASE-uttalanden?
Svar: Både DECODE & CASE-uttalanden kommer att fungera som IF-THEN-ELSE-uttalanden och de är alternativen för varandra. Dessa funktioner används i Oracle för att transformera datavärdena.
Till exempel:
DECODE-funktion
Select ORDERNUM, DECODE (STATUS,'O', ‘ORDERED’,'P', ‘PACKED,’S’,’SHIPPED’,’A’,’ARRIVED’) FROM ORDERS;
FALL Fungera
Select ORDERNUM , CASE (WHEN STATUS ='O' then ‘ORDERED’ WHEN STATUS ='P' then PACKED WHEN STATUS ='S' then ’SHIPPED’ ELSE ’ARRIVED’) END FROM ORDERS;
Båda kommandona visar ordernummer med respektive status som,
Om,
Status O = beställd
Status P = Packad
Status S = levereras
Status A = Anlänt
F # 19) Varför behöver vi integritetsbegränsningar i en databas?
Svar: Integritetsbegränsningar krävs för att genomdriva affärsregler för att upprätthålla databasens integritet och förhindra att ogiltiga uppgifter matas in i tabellerna. Med hjälp av nedanstående begränsningar kan relationer upprätthållas mellan tabellerna.
Olika integritetsbegränsningar finns tillgängliga som inkluderar primär nyckel, främmande nyckel, UNIK KEY, INTE NULL & CHECK.
F # 20) Vad menar du med MERGE i Oracle och hur kan vi slå samman två bord?
Svar: MERGE-uttalandet används för att slå samman data från två tabeller. Det väljer data från källtabellen och infogar / uppdaterar dem i den andra tabellen baserat på villkoret i MERGE-frågan.
Syntax:
MERGE INTO TARGET_TABLE_1 USING SOURCE_TABLE_1 ON SEARCH_CONDITION WHEN MATCHED THEN INSERT (COL_1, COL_2…) VALUES (VAL_1, VAL_2…) WHERE WHEN NOT MATCHED THEN UPDATE SET COL_1=VAL_1, COL_2=VAL_2… WHEN
F # 21) Vad är användningen av aggregerade funktioner i Oracle?
Svar: Aggregerade funktioner utför sammanfattningsoperationer på en uppsättning värden för att ge ett enda värde. Det finns flera aggregerade funktioner som vi använder i vår kod för att utföra beräkningar. Dessa är:
- AVG
- MIN
- MAX
- RÄKNA
- BELOPP
- STDEV
Fråga # 22) Vad menar operatörerna UNION, UNION ALL, MINUS & INTERSECT att göra?
Svar: Uppsättningsoperatören underlättar för användaren att hämta data från två eller fler än två tabeller samtidigt om kolumnerna och relativa datatyperna är desamma i källtabellerna.
- UNION operatören returnerar alla rader från båda tabellerna förutom de dubbla raderna.
- UNION ALL returnerar alla rader från båda tabellerna tillsammans med de dubbla raderna.
- MINUS returnerar rader från den första tabellen, som inte finns i den andra tabellen.
- KORSAS returnerar bara de vanliga raderna i båda tabellerna.
F # 23) Kan vi konvertera ett datum till char i Oracle och i så fall, vad skulle syntaxen vara?
Svar: Vi kan använda TO_CHAR-funktionen för att göra ovanstående konvertering.
Syntax:
SELECT to_char (to_date ('30-01-2018', 'DD-MM-YYYY'), 'YYYY-MM-DD') FROM dual;
F # 24) Vad menar du med en databastransaktion och vad finns alla TCL-uttalanden tillgängliga i Oracle?
Svar: Transaktion sker när en uppsättning SQL-satser körs på en gång. För att kontrollera genomförandet av dessa uttalanden har Oracle introducerat TCL, dvs. Transaction Control Statements som använder en uppsättning uttalanden.
Uppsättningen innehåller:
- BEGÅ: Används för att göra en transaktion permanent.
- RULLA TILLBAKA: Används för att rulla tillbaka DB: s tillstånd för att hålla kommittén.
- SPARPUNKT: Hjälper till att ange en transaktionspunkt till vilken återställning kan göras senare.
F # 25) Vad förstår du av ett databasobjekt? Kan du lista några av dem?
Svar: Objekt som används för att lagra data eller referenser för data i en databas kallas ett databasobjekt. Databasen består av olika typer av DB-objekt som tabeller, vyer, index, begränsningar, lagrade procedurer, utlösare etc.
F # 26) Vad är en kapslad tabell och hur skiljer den sig från en normal tabell?
Svar: En kapslad tabell är ett objekt för databassamling som kan lagras som en kolumn i en tabell. När du skapar en normal tabell kan en hel kapslad tabell refereras till i en enda kolumn. Kapslade tabeller har endast en kolumn utan begränsning av rader.
Till exempel:
CREATE TABLE EMP ( EMP_ID NUMBER, EMP_NAME TYPE_NAME)
Här skapar vi en normal tabell som EMP och hänvisar en kapslad tabell TYPE_NAME till en kolumn.
F # 27) Kan vi spara bilder i en databas och om ja, hur?
Svar: BLOB står för Binary Large Object, som är en datatyp som vanligtvis används för att hålla bilder, ljud- och videofiler eller några binära körbara filer. Denna datatyp har kapacitet att hålla data upp till 4 GB.
F # 28) Vad förstår du med databasschema och vad innehåller det?
Svar: Schema är en samling databasobjekt som ägs av en databasanvändare som kan skapa eller manipulera nya objekt inom detta schema. Schemat kan innehålla alla DB-objekt som tabell, vy, index, kluster, lagrade procs, funktioner etc.
F # 29) Vad är en datalogg och hur kan den skapas?
Svar: När en ny databas skapas skapas en databasspecifik datalogg av systemet. Denna ordbok ägs av SYS-användaren och underhåller alla metadata relaterade till databasen. Den har en uppsättning skrivskyddade tabeller och vyer och den lagras fysiskt i tabellen SYSTEM.
F # 30) Vad är en vy och hur skiljer den sig från en tabell?
Svar: View är ett användardefinierat databasobjekt som används för att lagra resultaten av en SQL-fråga, som kan refereras till senare. Visningar lagrar inte dessa data fysiskt utan som en virtuell tabell, därför kan den kallas en logisk tabell.
Vyn skiljer sig från tabellen som:
- En tabell kan innehålla data men inte SQL-frågeresultat medan View kan spara sökresultaten, som kan användas i en annan SQL-fråga som helhet.
- Tabellen kan uppdateras eller tas bort medan Views inte kan göras.
F # 31) Vad menas med en dödläge?
Svar: Dödläge är en situation där två eller flera användare samtidigt väntar på data, som låses av varandra. Därför resulterar det i alla blockerade användarsessioner.
F # 32) Vad menas med ett index?
Svar: Ett index är ett schemaobjekt som skapas för att effektivt söka i data i tabellen. Index skapas vanligtvis i vissa kolumner i tabellen, som är mest åtkomliga. Index kan vara grupperade eller icke-grupperade.
F # 33) Vad är en roll i Oracle-databasen?
Svar: Att ge åtkomst till enskilda objekt till enskilda användare är en tuff administrativ uppgift. För att göra det här jobbet enkelt skapas en grupp gemensamma behörigheter i en databas, som kallas ROLE. ROLEN, när den har skapats, kan tilldelas eller återkallas från användarna med hjälp av kommandot GRANT & REVOKE.
Syntax:
CREATE ROLE READ_TABLE_ROLE; GRANT SELECT ON EMP TO READ_TABLE_ROLE; GRANT READ_TABLE_ROLE TO USER1; REVOKE READ_TABLE_ROLE FROM USER1;
F # 34) Vilka är attributen som finns i en CURSOR?
Svar: En markör har olika attribut som nämns nedan:
(jag hittade :
- Returnerar INVALID_CURSOR om markören har förklarats men stängts.
- Returnerar NULL om hämtning inte har hänt men markören endast är öppen.
- Returnerar SANT om raderna hämtas framgångsrikt och FALSE om inga rader returneras.
(ii) HITTAS INTE :
- Returnerar INVALID_CURSOR om markören har förklarats men stängts.
- Returnerar NULL om hämtning inte har hänt men markören endast är öppen.
- Returnerar FALSE om rader hämtas framgångsrikt och SANT om inga rader returneras
(iii)% ISOPEN : Returnerar SANT, om markören är ÖPPEN annat FALSKT
(iv)% RÅKONTO : Returnerar antalet rader som hämtats.
F # 35) Varför använder vi% ROWTYPE &% TYPE i PLSQL?
hur man ringer en array från en annan metod i java
Svar: % ROWTYPE &% TYPE är attributen i PL / SQL som kan ärva datatyperna för en tabell definierad i en databas. Syftet med att använda dessa attribut är att tillhandahålla dataoberoende och integritet.
Om någon av datatyperna eller precisionen ändras i databasen uppdateras PL / SQL-koden automatiskt med den ändrade datatypen.
% TYPE används för att deklarera en variabel som måste ha samma datatyp som i en tabellkolumn.
Medan% ROWTYPE kommer att användas för att definiera en fullständig rad poster som har en struktur som liknar strukturen i en tabell.
F # 36) Varför skapar vi lagrade procedurer och funktioner i PL / SQL och hur är de olika?
Svar: En lagrad procedur är en uppsättning SQL-uttalanden som skrivs för att utföra en specifik uppgift. Dessa uttalanden kan sparas som en grupp i databasen med ett tilldelat namn och kan delas med olika program om behörighet finns för att få åtkomst till detsamma.
Funktioner är återigen delprogram som skrivs för att utföra specifika uppgifter men det finns skillnader mellan dem båda.
Lagrade procedurer | Funktioner |
---|---|
Lagrade procedurer kan returnera ett värde eller inte och kan också returnera flera värden. | Funktionen returnerar alltid endast ett värde. |
Lagrade procedurer kan innehålla DML-uttalanden som infoga, uppdatera och ta bort. | Vi kan inte använda DML-satser i en funktion. |
Lagrade procedurer kan anropa funktioner. | Funktioner kan inte anropa lagrade procedurer. |
Lagrade procedurer stöder undantagshantering med Try / Catch-block. | Funktioner stöder inte Try / Catch-block. |
F # 37) Vilka parametrar kan vi passera genom en lagrad procedur?
Svar: Vi kan skicka parametrarna IN, OUT & INOUT genom en lagrad procedur och de bör definieras medan vi förklarar själva proceduren.
F # 38) Vad är en utlösare och vilken typ är den?
Svar: En trigger är ett lagrat program som skrivs på ett sådant sätt att det körs automatiskt när någon händelse inträffar. Denna händelse kan vara vilken DML- eller DDL-operation som helst.
PL / SQL stöder två typer av utlösare:
- Radnivå
- Uttalningsnivå
F # 39) Hur skiljer du en global variabel med en lokal variabel i PL / SQL?
Svar: Global variabel är den som definieras i början av programmet och överlever till slutet. Det kan nås med alla metoder eller procedurer inom programmet, medan åtkomsten till den lokala variabeln är begränsad till proceduren eller metoden där den deklareras.
F # 40) Vilka är paketen i PL SQL?
Svar: Ett paket är en grupp relaterade databasobjekt som lagrade procs, funktioner, typer, utlösare, markörer etc. som lagras i Oracle-databasen. Det är ett slags bibliotek med relaterade objekt som kan nås av flera applikationer om det är tillåtet.
PL / SQL-paketstrukturen består av två delar: paketspecifikation och paketdel.
Slutsats
Jag hoppas att ovanstående frågor skulle ha hjälpt dig att få en glimt av vad Oracle handlar om.
Även om du har en grundlig kunskap om alla grundläggande begrepp, är det väldigt mycket hur du presenterar det i intervjun. Håll dig därför lugn och möt intervjun med tillförsikt utan tvekan.
Läs NÄSTA del 2: Oracle DBA, RAC och Performance Tuning Frågor
Vi önskar er all framgång !!
Rekommenderad läsning
- Intervjufrågor och svar
- Topp Oracle Apps tekniska och Oracle SOA intervjufrågor
- De viktigaste frågorna om Oracle Forms and Reports
- Några intressanta programtestintervjufrågor
- 30 viktigaste PL / SQL-intervjufrågor och svar 2021
- Toppfrågor om Oracle DBA, RAC och Performance Tuning
- Topp 90 SQL-intervjufrågor och svar (LATEST)
- 20 enkla frågor för att kontrollera din programvara Testa grundläggande kunskap (Online Quiz)