top oracle interview questions
Ofte stillede spørgsmål og svar om Oracle Interview:
Top 40 Oracle-interviewspørgsmål sammen med svar, der dækker næsten alle de grundlæggende begreber i Oracle.
Dette er en dybtgående serie, der dækker næsten alle spørgsmål fra Oracle Interview:
Del 1: Oracle Basic, SQL, PL / SQL spørgsmål (denne artikel)
Del 2: Oracle DBA, RAC og Performance Tuning spørgsmål
Del # 3: Oracle Forms and Reports Interview Spørgsmål
Del # 4: Oracle Apps og Oracle SOA tekniske interviewspørgsmål
Lad os starte med 1. artikel i serien.
Typer af spørgsmål, der er dækket af denne artikel:
- Grundlæggende spørgsmål om Oracle-interview
- Oracle SQL-spørgsmål til spørgsmål
- Oracle PL / SQL-spørgsmål
Du finder det grundlæggende i Oracle forklaret med enkle eksempler til din forståelse. Hvis du planlægger at møde op til et Oracle-interview, vil disse spørgsmålsspørgsmål, der er dækket af denne artikel, bestemt være til stor hjælp.
Lad os gå videre !!
Liste over de mest populære Oracle Interview-spørgsmål
Q # 1) Hvad er Oracle, og hvad er dens forskellige udgaver?
Svar: Oracle er en af de populære databaser, der leveres af Oracle Corporation, der arbejder på relationelle managementkoncepter, og derfor kaldes det også Oracle RDBMS. Det bruges i vid udstrækning til online transaktionsbehandling, datalager og enterprise grid computing.
Spørgsmål nr. 2) Hvordan identificerer du Oracle Database Software Release?
Svar: Oracle følger en række formater for hver udgivelse.
For eksempel ,
Udgivelse 10.1.0.1.1 kan kaldes:
10: Større DB frigivelsesnummer
1: DB-vedligeholdelsesudgivelsesnummer
0: Applikationsservers frigivelsesnummer
1: Komponentspecifikt frigivelsesnummer
1: Platformspecifikt frigivelsesnummer
oracle database interview spørgsmål og svar
Spørgsmål nr. 3) Hvordan skelner du mellem VARCHAR og VARCHAR2?
Svar: Både VARCHAR og VARCHAR2 er Oracle-datatyper, der bruges til at gemme tegnstrenge med variabel længde. Deres forskelle er:
- VARCHAR kan gemme tegn op til 2000 byte, mens VARCHAR2 kan gemme op til 4000 byte.
- VARCHAR holder pladsen til tegn, der er defineret under erklæringen, selvom alle ikke bruges, mens VARCHAR2 frigiver det ubrugte rum.
Q # 4) Hvad er forskellen mellem TRUNCATE & DELETE-kommandoen?
Svar: Begge kommandoer bruges til at fjerne data fra databasen.
Forskellen mellem de to inkluderer:
- TRUNCATE er en DDL-handling, mens DELETE er en DML-handling.
- TRUNCATE fjerner alle rækkerne, men efterlader tabelstrukturen intakt. Det kan ikke rulles tilbage, da det udsteder COMMIT før og efter kommandokørsel, mens SLET-kommandoen kan rulles tilbage.
- TRUNCATE-kommandoen frigør objektets lagerplads, mens SLET-kommandoen ikke gør det.
- TRUNCATE er hurtigere sammenlignet med SLET.
Q # 5) Hvad menes med RAW datatype?
Svar: RAW-datatype bruges til at gemme binære data med variabel længde eller byte-strenge.
Forskellen mellem RAW & VARCHAR2 datatype er, at PL / SQL ikke genkender denne datatype og derfor ikke kan foretage nogen konverteringer, når RAW-data overføres til forskellige systemer. Denne datatype kan kun forespørges eller indsættes i en tabel.
Syntaks: RAW (præcision)
Q # 6) Hvad menes med Joins? Angiv typer af sammenføjninger.
Svar: Joins bruges til at udtrække data fra flere tabeller ved hjælp af nogle almindelige kolonner eller betingelser.
Der findes forskellige typer sammenføjninger som angivet nedenfor:
- INDRE MEDLEM
- YDRE MEDLEM
- CROSS JOINS eller CARTESIAN PRODUCT
- EQUI BLIVER MED
- ANTI JOIN
- SEMI BLIVER MED
Q # 7) Hvad er forskellen mellem SUBSTR & INSTR-funktioner?
Svar:
- SUBSTR-funktionen returnerer underdelen identificeret ved numeriske værdier fra den angivne streng.
- For eksempel , (SELECT SUBSTR ('India is my country', 1, 4) from dual) returnerer 'Indi'.
- INSTR returnerer positionen for understrengen i strengen.
- For eksempel , (VÆLG INSTR ('Indien er mit land', 'a') fra dobbelt) returnerer 5.
Spørgsmål nr. 8) Hvordan kan vi finde ud af de dobbelte værdier i en Oracle-tabel?
Svar: Vi kan bruge nedenstående eksempelforespørgsel til at hente duplikatposter.
SELECT EMP_NAME, COUNT (EMP_NAME) FROM EMP GROUP BY EMP_NAME HAVING COUNT (EMP_NAME) > 1;
Spørgsmål nr. 9) Hvordan gør ON-DELETE-CASCADE-erklæringen arbejde?
Svar: Brug af ON DELETE CASCADE sletter automatisk en post i den underordnede tabel, når den samme slettes fra den overordnede tabel. Denne erklæring kan bruges med udenlandske nøgler.
Vi kan tilføje ON DELETE CASCADE-indstilling på en eksisterende tabel ved hjælp af nedenstående sæt kommandoer.
Syntaks:
ALTER TABLE CHILD_T1 ADD CONSTRAINT CHILD_PARENT_FK REFERENCES PARENT_T1 (COLUMN1) ON DELETE CASCADE;
Q # 10) Hvad er en NVL-funktion? Hvordan kan det bruges?
Svar: NVL er en funktion, der hjælper brugeren med at erstatte værdi, hvis der opstår null for et udtryk.
Det kan bruges som nedenstående syntaks.
NVL (Value_In, Replace_With)
Spørgsmål nr. 11) Hvad er forskellen mellem en primær nøgle og en unik nøgle?
Svar: Primær nøgle bruges til at identificere hver tabelrække entydigt, mens en unik nøgle forhindrer duplikatværdier i en tabelkolonne.
Nedenfor er et par forskelle:
- Den primære nøgle kan kun være en på bordet, mens unikke nøgler kan være flere.
- Den primære nøgle kan slet ikke holde nulværdien, mens den unikke nøgle tillader flere nulværdier.
- Den primære nøgle er et klynget indeks, mens en unik nøgle er et ikke-klynget indeks.
Spørgsmål nr. 12) Hvordan TRANSLATE-kommandoen adskiller sig fra REPLACE?
Svar: TRANSLATE-kommandoen oversætter tegn en efter en i den angivne streng med substitutionstegnet. REPLACE-kommandoen erstatter et tegn eller et sæt tegn med en komplet substitutionsstreng.
For eksempel:
TRANSLATE (‘Missisippi’,’is’,’15) => M155151pp1 REPLACE (‘Missisippi’,’is’,’15) => M15s15ippi
Spørgsmål nr. 13) Hvordan kan vi finde ud af den aktuelle dato og tid i Oracle?
Svar: Vi kan finde den aktuelle dato og tid ved hjælp af SYSDATE-kommandoen i Oracle.
Syntaks:
SELECT SYSDATE into CURRENT_DATE from dual;
Spørgsmål nr. 14) Hvorfor bruger vi COALESCE-funktionen i Oracle?
Svar: COALESCE-funktionen bruges til at returnere det første ikke-nul-udtryk fra listen over argumenter, der er angivet i udtrykket. Der skal være mindst to argumenter i et udtryk.
Syntaks:
COALESCE (expr 1, expr 2, expr 3…expr n)
Spørgsmål nr. 15) Hvordan skriver du en forespørgsel for at få 5. RANK-studerende fra tabellen STUDENT_REPORT?
Svar: Forespørgslen vil være som følger:
SELECT TOP 1 RANK FROM (SELECT TOP 5 RANK FROM STUDENT_REPORT ORDER BY RANK DESC) AS STUDENT ORDER BY RANK ASC;
Spørgsmål nr. 16) Hvornår bruger vi GROUP BY-klausulen i SQL-forespørgsel?
Svar: GROUP BY-klausul bruges til at identificere og gruppere dataene efter en eller flere kolonner i forespørgselsresultaterne. Denne klausul bruges ofte med samlede funktioner som COUNT, MAX, MIN, SUM, AVG osv.
Syntaks:
SELECT COLUMN_1, COLUMN_2 FROM TABLENAME WHERE (condition) GROUP BY COLUMN_1, COLUMN_2
Spørgsmål nr. 17) Hvad er den hurtigste måde at hente dataene fra en tabel på?
Svar: Den hurtigste måde at hente data på ville være at bruge ROWID i SQL-forespørgslen.
Spørgsmål nr. 18) Hvor bruger vi DECODE- og CASE-erklæringer?
Svar: Begge DECODE & CASE-udsagn fungerer som IF-THEN-ELSE-udsagn, og de er alternativerne for hinanden. Disse funktioner bruges i Oracle til at transformere dataværdierne.
For eksempel:
DECODE-funktion
Select ORDERNUM, DECODE (STATUS,'O', ‘ORDERED’,'P', ‘PACKED,’S’,’SHIPPED’,’A’,’ARRIVED’) FROM ORDERS;
SAG Fungere
Select ORDERNUM , CASE (WHEN STATUS ='O' then ‘ORDERED’ WHEN STATUS ='P' then PACKED WHEN STATUS ='S' then ’SHIPPED’ ELSE ’ARRIVED’) END FROM ORDERS;
Begge kommandoer viser ordrenumre med deres respektive status som,
Hvis,
Status O = bestilt
Status P = pakket
Status S = afsendt
Status A = Ankommet
Spørgsmål nr. 19) Hvorfor har vi brug for integritetsbegrænsninger i en database?
Svar: Der kræves integritetsbegrænsninger for at håndhæve forretningsregler for at opretholde databasens integritet og forhindre indførelse af ugyldige data i tabellerne. Ved hjælp af nedenstående begrænsninger kan forhold opretholdes mellem tabellerne.
Forskellige integritetsbegrænsninger er tilgængelige, som inkluderer primær nøgle, fremmed nøgle, UNIK KEY, IKKE NULL & CHECK.
Spørgsmål nr. 20) Hvad mener du med FUSION i Oracle, og hvordan kan vi flette to tabeller?
Svar: MERGE-sætningen bruges til at flette dataene fra to tabeller. Det vælger dataene fra kildetabellen og indsætter / opdaterer dem i den anden tabel baseret på den betingelse, der er angivet i MERGE-forespørgslen.
Syntaks:
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
Spørgsmål nr. 21) Hvad er brugen af samlede funktioner i Oracle?
Svar: Aggregerede funktioner udfører oversigtshandlinger på et sæt værdier for at give en enkelt værdi. Der er flere samlede funktioner, som vi bruger i vores kode til at udføre beregninger. Disse er:
- AVG
- MIN
- MAX
- TÆLLE
- SUM
- STDEV
Q # 22) Hvad skal sætoperatørerne UNION, UNION ALL, MINUS & INTERSECT gøre?
Svar: Sætoperatøren letter brugeren til at hente dataene fra to eller mere end to tabeller på én gang, hvis kolonnerne og de relative datatyper er de samme i kildetabellerne.
- UNION operator returnerer alle rækkerne fra begge tabeller undtagen de duplikerede rækker.
- UNION ALLE returnerer alle rækkerne fra begge tabeller sammen med de duplikerede rækker.
- MINUS returnerer rækker fra den første tabel, som ikke findes i den anden tabel.
- KRYDSE returnerer kun de almindelige rækker i begge tabeller.
Spørgsmål nr. 23) Kan vi konvertere en dato til char i Oracle, og i så fald, hvad ville syntaksen være?
Svar: Vi kan bruge funktionen TO_CHAR til at udføre ovenstående konvertering.
Syntaks:
SELECT to_char (to_date ('30-01-2018', 'DD-MM-YYYY'), 'YYYY-MM-DD') FROM dual;
Spørgsmål nr. 24) Hvad mener du med en databasetransaktion, og hvad er alle TCL-udsagn tilgængelige i Oracle?
Svar: Transaktion opstår, når et sæt SQL-sætninger udføres på én gang. For at kontrollere udførelsen af disse udsagn har Oracle introduceret TCL, dvs. transaktionskontroludtalelser, der bruger et sæt udsagn.
Sættet med udsagn inkluderer:
- BEGÅ: Bruges til at gøre en transaktion permanent.
- RULBACK: Bruges til at rulle DB-tilstanden tilbage for at vare forpligtelsespunktet.
- SAVEPOINT: Hjælper med at specificere et transaktionspunkt, som tilbageførsel kan udføres senere.
Spørgsmål nr. 25) Hvad forstår du ved et databaseobjekt? Kan du liste nogle få af dem?
Svar: Objekt, der bruges til at gemme data eller referencer til dataene i en database, er kendt som et databaseobjekt. Databasen består af forskellige typer DB-objekter såsom tabeller, visninger, indekser, begrænsninger, lagrede procedurer, udløsere osv.
Spørgsmål nr. 26) Hvad er en indlejret tabel, og hvordan adskiller den sig fra en normal tabel?
Svar: En indlejret tabel er et objekt til databasesamling, som kan gemmes som en kolonne i en tabel. Mens du opretter en normal tabel, kan der henvises til en hel indlejret tabel i en enkelt kolonne. Indlejrede tabeller har kun en kolonne uden begrænsning af rækker.
For eksempel:
CREATE TABLE EMP ( EMP_ID NUMBER, EMP_NAME TYPE_NAME)
Her opretter vi en normal tabel som EMP og henviser en indlejret tabel TYPE_NAME som en kolonne.
Spørgsmål nr. 27) Kan vi gemme billeder i en database, og hvis ja, hvordan?
Svar: BLOB står for Binary Large Object, som er en datatype, der generelt bruges til at indeholde billeder, lyd- og videofiler eller nogle binære eksekverbare filer. Denne datatype har kapacitet til at holde data op til 4 GB.
Spørgsmål nr. 28) Hvad forstår du ved databaseskema, og hvad indeholder det?
Svar: Skema er en samling af databaseobjekter, der ejes af en databasebruger, der kan oprette eller manipulere nye objekter inden for dette skema. Skemaet kan indeholde alle DB-objekter som tabel, visning, indekser, klynger, lagrede procs, funktioner osv.
Spørgsmål nr. 29) Hvad er en dataordbog, og hvordan kan den oprettes?
Svar: Hver gang der oprettes en ny database, oprettes en databasespecifik dataordbog af systemet. Denne ordbog ejes af SYS-brugeren og vedligeholder alle metadata relateret til databasen. Det har et sæt skrivebeskyttede tabeller og visninger, og det er fysisk gemt i SYSTEM-tabellen.
hvad er undernetmasken til en klasse b ip-adresse?
Spørgsmål nr. 30) Hvad er en visning, og hvordan adskiller den sig fra en tabel?
Svar: Visning er et brugerdefineret databaseobjekt, der bruges til at gemme resultaterne af en SQL-forespørgsel, som kan henvises til senere. Visninger gemmer ikke disse data fysisk, men som en virtuel tabel, og derfor kan de kaldes en logisk tabel.
Visningen adskiller sig fra tabellen som:
- En tabel kan indeholde data, men ikke SQL-forespørgselsresultater, mens View kan gemme forespørgselsresultaterne, som kan bruges i en anden SQL-forespørgsel som helhed.
- Tabellen kan opdateres eller slettes, mens Views ikke kan gøres.
Spørgsmål nr. 31) Hvad menes med en blokeret situation?
Svar: Deadlock er en situation, hvor to eller flere brugere samtidig venter på dataene, som er låst af hinanden. Derfor resulterer det i alle blokerede brugersessioner.
Spørgsmål nr. 32) Hvad menes med et indeks?
Svar: Et indeks er et skemaobjekt, der oprettes for at søge i dataene effektivt i tabellen. Indeks oprettes normalt på bestemte kolonner i tabellen, som er mest tilgængelig. Indekser kan være grupperet eller ikke-grupperet.
Spørgsmål nr. 33) Hvad er en ROLE i Oracle-databasen?
Svar: At give adgang til individuelle objekter til de enkelte brugere er en hård administrativ opgave. For at gøre dette job let oprettes en gruppe fælles privilegier i en database, der er kendt som ROLE. ROLEN, når den er oprettet, kan tildeles eller tilbagekaldes fra brugerne ved hjælp af GRANT & REVOKE-kommandoen.
Syntaks:
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;
Spørgsmål nr. 34) Hvilke attributter findes i en CURSOR?
Svar: EN MARKER har forskellige attributter som nævnt nedenfor:
(jeg fandt :
- Returnerer INVALID_CURSOR, hvis markøren er erklæret, men lukket.
- Returnerer NULL, hvis hentning ikke er sket, men markøren kun er åben.
- Returnerer SAND, hvis rækkerne er hentet med succes og FALSK, hvis ingen rækker returneres.
(ii) IKKE FUNDET :
- Returnerer INVALID_CURSOR, hvis markøren er erklæret, men lukket.
- Returnerer NULL, hvis hentning ikke er sket, men markøren kun er åben.
- Returnerer FALSK, hvis rækker hentes med succes og SAND, hvis ingen rækker returneres
(iii)% ISOPEN : Returnerer SAND, hvis markøren er ÅBEN ellers FALSK
(iv)% ROWCOUNT : Returnerer antallet af hentede rækker.
Spørgsmål nr. 35) Hvorfor bruger vi% ROWTYPE &% TYPE i PLSQL?
Svar: % ROWTYPE &% TYPE er attributterne i PL / SQL, der kan arve datatyperne i en tabel defineret i en database. Formålet med at bruge disse attributter er at give datauafhængighed og integritet.
Hvis nogen af datatyperne eller præcisionen ændres i databasen, opdateres PL / SQL-koden automatisk med den ændrede datatype.
% TYPE bruges til at deklarere en variabel, der skal have den samme datatype som i en tabelkolonne.
Mens% ROWTYPE vil blive brugt til at definere en komplet række poster, der har en struktur svarende til strukturen i en tabel.
Spørgsmål nr. 36) Hvorfor opretter vi lagrede procedurer og funktioner i PL / SQL, og hvordan er de forskellige?
Svar: En lagret procedure er et sæt SQL-udsagn, der er skrevet til at udføre en bestemt opgave. Disse udsagn kan gemmes som en gruppe i databasen med et tildelt navn og kan deles med forskellige programmer, hvis der er tilladelse til at få adgang til det samme.
Funktioner er igen underprogrammer, der er skrevet til at udføre specifikke opgaver, men der er forskelle mellem dem begge.
Lagrede procedurer | Funktioner |
---|---|
Lagrede procedurer returnerer muligvis en værdi og kan også returnere flere værdier. | Funktion returnerer altid kun en enkelt værdi. |
Lagrede procedurer kan omfatte DML-udsagn som indsættelse, opdatering og sletning. | Vi kan ikke bruge DML-sætninger i en funktion. |
Lagrede procedurer kan ringe til funktioner. | Funktioner kan ikke kalde lagrede procedurer. |
Lagrede procedurer understøtter håndtering af undtagelser ved hjælp af Try / Catch-blok. | Funktioner understøtter ikke Try / Catch-blok. |
Spørgsmål nr. 37) Hvad er de parametre, som vi kan passere gennem en lagret procedure?
Svar: Vi kan sende parametre IN, OUT & INOUT gennem en lagret procedure, og de skal defineres, mens vi erklærer selve proceduren.
Q # 38) Hvad er en trigger, og hvad er dens typer?
Svar: En trigger er et gemt program, der er skrevet på en sådan måde, at det bliver udført automatisk, når en begivenhed opstår. Denne begivenhed kan være enhver DML- eller en DDL-operation.
PL / SQL understøtter to typer udløsere:
- Række niveau
- Erklæringsniveau
Spørgsmål nr. 39) Hvordan skelner du en global variabel med en lokal variabel i PL / SQL?
Svar: Global variabel er den, der er defineret i starten af programmet og overlever indtil slutningen. Den kan tilgås med alle metoder eller procedurer i programmet, mens adgangen til den lokale variabel er begrænset til den procedure eller metode, hvor den er erklæret.
Spørgsmål nr. 40) Hvad er pakkerne i PL SQL?
Svar: En pakke er en gruppe relaterede databaseobjekter som lagrede procs, funktioner, typer, udløsere, markører osv., Der er gemt i Oracle-databasen. Det er et slags bibliotek med relaterede objekter, som der er adgang til flere applikationer, hvis det er tilladt.
PL / SQL pakke struktur består af 2 dele: pakke specifikation & pakke krop.
Konklusion
Jeg håber, at ovenstående sæt spørgsmål ville have hjulpet dig med at få et glimt af, hvad Oracle handler om.
Selvom du har et indgående kendskab til alle de grundlæggende begreber, betyder det meget, hvordan du præsenterer det i interviewet. Bliv derfor rolig og møde interviewet med tillid uden tøven.
Læs NÆSTE del 2: Oracle DBA, RAC og Performance Tuning spørgsmål
Vi ønsker dig al succes !!
Anbefalet læsning
- Interviewspørgsmål og svar
- Top Oracle Apps tekniske og Oracle SOA interviewspørgsmål
- Top spørgsmål om Oracle-formularer og rapporter
- Nogle interessante softwaretestinterviewspørgsmål
- 30 vigtigste PL / SQL-spørgsmål og svar i 2021
- Topspørgsmål om Oracle DBA, RAC og Performance Tuning Interview
- Top 90 SQL-spørgsmål og svar (LATEST)
- 20 enkle spørgsmål til kontrol af din software Test af grundlæggende viden (Online quiz)