Top Oracle intervijas jautājumi: Oracle Basic, SQL, PL/SQL jautājumi

Visbiežāk uzdotie Oracle intervijas jautājumi un atbildes:

Top 40 Oracle intervijas jautājumi kopā ar atbildēm, kas aptver gandrīz visus Oracle pamatjēdzienus.

Šī ir padziļināta sērija, kas aptver gandrīz visus Oracle intervijas jautājumus:

1. daļa: Oracle Basic, SQL, PL/SQL jautājumi (šis raksts)

2. daļa: Oracle DBA, RAC un veiktspējas regulēšanas jautājumi

3. daļa: Oracle veidlapu un pārskatu intervijas jautājumi

4. daļa: Oracle Apps un Oracle SOA tehniskās intervijas jautājumi

Sāksim ar sērijas pirmo rakstu.

Šajā rakstā aplūkoto jautājumu veidi:

  • Oracle intervijas pamatjautājumi
  • Oracle SQL intervijas jautājumi
  • Oracle PL/SQL intervijas jautājumi

Jūs atradīsiet Oracle pamatus, kas izskaidroti ar vienkāršiem piemēriem, lai jūs tos saprastu. Ja plānojat ierasties uz Oracle interviju, šie šajā rakstā aplūkotie jautājumu komplekti jums noteikti būs ļoti noderīgi.

Iesim uz priekšu!!

Top Oracle intervijas jautājumu saraksts

Q #1) Kas ir Oracle un kādas ir tā dažādās versijas?

Atbilde: Oracle ir viena no populārākajām Oracle Corporation piedāvātajām datubāzēm, kas darbojas, izmantojot relāciju pārvaldības koncepcijas, tāpēc to dēvē arī par Oracle RDBMS. To plaši izmanto tiešsaistes darījumu apstrādei, datu glabāšanai un uzņēmumu režģu skaitļošanai.

Q #2) Kā jūs identificēsiet Oracle datubāzes programmatūras versiju?

Atbilde: Oracle katrai versijai izmanto vairākus formātus.

Piemēram ,

10.1.0.1.1.1. laidienu var saukt par:

10: Galvenās DB versijas numurs

1: DB uzturēšanas versijas numurs

0: Lietojumprogrammu servera izlaiduma numurs

1: Sastāvdaļai specifisks izlaiduma numurs

1: Platformai specifisks laidiena numurs

Q #3) Kā jūs atšķirsiet VARCHAR & amp; VARCHAR2?

Atbilde: VARCHAR & amp; VARCHAR2 ir Oracle datu tipi, ko izmanto mainīga garuma rakstzīmju virkņu glabāšanai. To atšķirības ir šādas:

  • VARCHAR var uzglabāt līdz 2000 baitiem, bet VARCHAR2 var uzglabāt līdz 4000 baitiem.
  • VARCHAR saglabās deklarēšanas laikā definēto rakstzīmju vietu pat tad, ja visas tās netiks izmantotas, savukārt VARCHAR2 atbrīvos neizmantoto vietu.

Q #4) Kāda ir atšķirība starp TRUNCATE & amp; DELETE komandām?

Atbilde: Abas komandas tiek izmantotas datu noņemšanai no datubāzes.

Atšķirība starp abiem ir šāda:

  • TRUNCATE ir DDL operācija, bet DELETE ir DML operācija.
  • TRUNCATE dzēš visas rindas, bet tabulas struktūru atstāj neskartu. To nevar atsaukt, jo tā izdod COMMIT pirms un pēc komandas izpildes, bet DELETE komandu var atsaukt.
  • Komanda TRUNCATE atbrīvo objekta glabāšanas vietu, bet komanda DELETE to nedara.
  • TRUNCATE ir ātrāks salīdzinājumā ar DELETE.

Q #5) Ko nozīmē RAW datu tips?

Atbilde: RAW datu tipu izmanto mainīga garuma bināro datu vai baitu virkņu glabāšanai.

Atšķirība starp RAW & amp; VARCHAR2 datu tipu ir tāda, ka PL/SQL neatpazīst šo datu tipu un tāpēc nevar veikt konvertēšanu, kad RAW dati tiek pārsūtīti uz dažādām sistēmām. Šo datu tipu var tikai pieprasīt vai ievietot tabulā.

Sintakse: RAW (precizitāte)

Q #6) Ko nozīmē termins Joins? Uzskaitiet Joins veidus.

Atbilde: Savienojumus izmanto, lai iegūtu datus no vairākām tabulām, izmantojot kopīgus kolonnas vai nosacījumus.

Ir dažādi savienošanas veidi, kas uzskaitīti turpmāk:

  • INNER JOIN
  • OUTER JOIN
  • KRUŠU Savienojumi vai KARTĒZIJAS PRODUKTS
  • EQUI JOIN
  • ANTI JOIN
  • SEMI JOIN

Q #7) Kāda ir atšķirība starp SUBSTR &; INSTR funkcijām?

Atbilde:

  • Funkcija SUBSTR atgriež ar skaitliskām vērtībām identificēto apakšdaļu no norādītās virknes.
    • Piemēram , [SELECT SUBSTR ('Indija ir mana valsts, 1, 4) no dual] atgriezīs "Indi".
  • INSTR atgriezīs apakšvirknes pozīcijas numuru virknē.
    • Piemēram , [SELECT INSTR ('Indija ir mana valsts, 'a') no dual] atgriezīs 5.

Q #8) Kā mēs varam noskaidrot Oracle tabulas dublikātu vērtības?

Atbilde: Lai iegūtu ierakstu dublikātus, varam izmantot tālāk sniegto piemēra vaicājumu.

 SELECT EMP_NAME, COUNT (EMP_NAME) FROM EMP GROUP BY EMP_NAME HAVING COUNT (EMP_NAME)> 1; 

Q #9) Kā tiek izmantots paziņojums ON-DELETE-CASCADE darbu?

Atbilde: Izmantojot ON DELETE CASCADE, ieraksts automātiski tiek dzēsts no pakārtotās tabulas, kad tas pats ieraksts tiek dzēsts no vecākās tabulas. Šo izteikumu var izmantot kopā ar ārējiem atslēgiem.

Mēs varam pievienot opciju ON DELETE CASCADE esošai tabulai, izmantojot tālāk norādīto komandu kopumu.

Sintakse:

 ALTER TABULA CHILD_T1 ADD CONSTRAINT CHILD_PARENT_FK REFERENCES PARENT_T1 (COLUMN1) ON DELETE CASCADE; 

Q #10) Kas ir NVL funkcija? Kā to var izmantot?

Atbilde: NVL ir funkcija, kas palīdz lietotājam aizstāt vērtību, ja tiek sastapta nulles vērtība.

To var izmantot, kā norādīts turpmāk.

 NVL (Value_In, Replace_With) 

Q #11) Kāda ir atšķirība starp primāro atslēgu & amp; unikālo atslēgu?

Atbilde: Primāro atslēgu izmanto, lai unikāli identificētu katru tabulas rindu, savukārt unikālā atslēga novērš vērtību dublēšanos tabulas kolonnā.

Tālāk ir norādītas dažas atšķirības:

  • Galvenie atslēgas taustiņi tabulā var būt tikai vieni, bet unikālie taustiņi var būt vairāki.
  • Primārā atslēga vispār nevar saturēt nulles vērtību, savukārt unikālā atslēga pieļauj vairākas nulles vērtības.
  • Primārā atslēga ir klasterizēts indekss, bet unikālā atslēga ir neklasterizēts indekss.

Q #12) Ar ko TRANSLATE komanda atšķiras no REPLACE?

Atbilde: Komanda TRANSLATE (pārveidot) pārtulko rakstzīmes pa vienai rakstzīmei sniegtajā virknē ar aizvietošanas rakstzīmi. Komanda REPLACE (aizstāt) aizstās rakstzīmi vai rakstzīmju kopumu ar pilnu aizvietošanas virkni.

Piemēram:

 TRANSLATE ('Missisippi','ir','15) => M155151pp1 REPLACE ('Missisippi','ir','15) => M15s15ippi 

Q #13) Kā Oracle programmā var uzzināt pašreizējo datumu un laiku?

Atbilde: Mēs varam atrast pašreizējo datumu & amp; laiks, izmantojot SYSDATE komandu Oracle.

Sintakse:

 SELECT SYSDATE uz CURRENT_DATE no dual; 

Q #14) Kāpēc Oracle tiek izmantota COALESCE funkcija?

Atbilde: COALESCE funkcija tiek izmantota, lai atgrieztu pirmo nenulles izteiksmi no izteiksmē norādīto argumentu saraksta. Izteiksmē jābūt vismaz diviem argumentiem.

Sintakse:

 COALESCE (expr 1, expr 2, expr 3...expr n) 

Q #15) Kā uzrakstīt vaicājumu, lai no tabulas STUDENT_REPORT iegūtu studentu 5. rangu?

Atbilde: vaicājums būs šāds:

 SELECT TOP 1 RANK FROM (SELECT TOP 5 RANK FROM STUDENT_REPORT ORDER BY RANK DESC) AS STUDENT ORDER BY RANK ASC; 

Q #16) Kad mēs izmantojam GROUP BY klauzulu SQL vaicājumā?

Atbilde: GROUP BY klauzulu izmanto, lai identificētu un sagrupētu datus pēc viena vai vairākiem pieprasījuma rezultātu stabiņiem. Šo klauzulu bieži izmanto kopā ar tādām apkopojuma funkcijām kā COUNT, MAX, MIN, SUM, AVG utt.

Sintakse:

 SELECT COLUMN_1, COLUMN_2 FROM TABLENAME WHERE [nosacījums] GROUP BY COLUMN_1, COLUMN_2 

Q #17) Kāds ir ātrākais veids, kā iegūt datus no tabulas?

Atbilde: Ātrākais veids, kā iegūt datus, ir izmantot ROWID SQL vaicājumā.

Q #18) Kur mēs izmantojam DECODE un CASE paziņojumus?

Atbilde: Abi DECODE & amp; CASE apgalvojumi darbojas kā IF-THEN-ELSE apgalvojumi, un tie ir viens otra alternatīvas. Šīs funkcijas tiek izmantotas Oracle, lai pārveidotu datu vērtības.

Piemēram:

DECODE funkcija

 Atlasiet ORDERNUM, DEKODE (STATUS,'O', 'ORDERED','P', 'PACKED,'S','SHIPPED','A','ARRIVED') FROM ORDERS; 

CASE Funkcija

 Atlasiet ORDERNUM , CASE (KAD STATUS ='O' tad 'PASŪTĪTS' KAD STATUS ='P' tad PACKED KAD STATUS ='S' tad 'SHIPPED' ELSE 'ARRIVED') END FROM ORDERS; 

Abas komandas parādīs pasūtījumu numurus ar attiecīgo statusu,

Ja,

Statuss O = pasūtīts

Statuss P= Iepakots

Statuss S= Nosūtīts

Statuss A = ieradies

Q #19) Kāpēc datu bāzē ir nepieciešami integritātes ierobežojumi?

Atbilde: Integritātes ierobežojumi ir nepieciešami, lai ieviestu uzņēmējdarbības noteikumus, lai saglabātu datu bāzes integritāti un novērstu nederīgu datu ievadīšanu tabulās. Ar turpmāk minēto ierobežojumu palīdzību var uzturēt attiecības starp tabulām.

Ir pieejami dažādi integritātes ierobežojumi, tostarp primārā atslēga, ārējā atslēga, UNIQUE KEY, NOT NULL & amp; CHECK.

Q #20) Ko jūs domājat ar MERGE Oracle programmā un kā mēs varam apvienot divas tabulas?

Atbilde: Lai apvienotu divu tabulu datus, izmanto MERGE paziņojumu. Tas atlasa datus no avota tabulas un ievieto/atjaunina tos otrā tabulā, pamatojoties uz MERGE vaicājumā norādīto nosacījumu.

Sintakse:

 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  KAD NAV SAKRITĪBAS, TAD ATJAUNINĀT SET COL_1=VĒRTĪBA_1, COL_2=VĒRTĪBA_2... KAD  

Q #21) Kāda ir apkopojošo funkciju izmantošana Oracle?

Atbilde: Apkopojošās funkcijas veic apkopojošas darbības ar vērtību kopumu, lai iegūtu vienu vērtību. Ir vairākas apkopojošās funkcijas, ko mēs izmantojam mūsu kodā, lai veiktu aprēķinus. Tie ir:

  • AVG
  • MIN
  • MAX
  • COUNT
  • SUM
  • STDEV

22. jautājums) Kādam nolūkam tiek izmantoti kopu operatori UNION, UNION ALL, MINUS & amp; INTERSECT?

Atbilde: Komplektēšanas operators atvieglo lietotājam iegūt datus no divām vai vairāk nekā divām tabulām vienlaicīgi, ja avota tabulās ir vienādi kolonnas un relatīvie datu tipi.

  • UNION operators atgriež visas abu tabulu rindas, izņemot dublikātu rindas.
  • VIENOTĪBA VISIEM atgriež visas rindas no abām tabulām kopā ar dublētajām rindām.
  • MINUS atgriež rindas no pirmās tabulas, kuru nav otrajā tabulā.
  • INTERSECT atgriež tikai abu tabulu kopīgās rindas.

Q #23) Vai mēs varam pārvērst datumu rakstzīmē Oracle programmā, un, ja jā, kāda būtu sintakse?

Atbilde: Mēs varam izmantot funkciju TO_CHAR, lai veiktu iepriekš minēto konvertēšanu.

Sintakse:

 SELECT to_char (to_date ('30-01-2018', 'DD-MM-YYYY'), 'GGGGG-MM-DD') FROM dual; 

Q #24) Ko jūs saprotat ar datubāzes transakciju & amp; kādi visi TCL paziņojumi ir pieejami Oracle?

Atbilde: Transakcija notiek, kad vienā reizē tiek izpildīts SQL izteikumu kopums. Lai kontrolētu šo izteikumu izpildi, Oracle ir ieviesis TCL, t. i., transakcijas kontroles izrakstus, kuros izmanto izrakstu kopumu.

Paziņojumu kopums ietver:

  • COMMIT: Izmanto, lai darījumu padarītu pastāvīgu.
  • ATGRIEŠANĀS ATPAKAĻ: Izmanto, lai atjaunotu DB stāvokli līdz pēdējam nodošanas punktam.
  • SAVEPOINT: Palīdz norādīt darījuma punktu, uz kuru vēlāk var veikt atiestatīšanu.

Q #25) Ko jūs saprotat ar datubāzes objektu? Vai varat uzskaitīt dažus no tiem?

Atbilde: Objekts, kas tiek izmantots datu vai atsauču uz datiem glabāšanai datubāzē, tiek saukts par datubāzes objektu. Datubāze sastāv no dažāda veida DB objektiem, piemēram, tabulām, skatiem, indeksiem, ierobežojumiem, saglabātajām procedūrām, trigeriem utt.

J #26) Kas ir ielikta tabula un ar ko tā atšķiras no parastas tabulas?

Atbilde: Ielikta tabula ir datubāzes kolekcijas objekts, ko var saglabāt kā kolonnu tabulā. Veidojot parastu tabulu, uz visu ieliktu tabulu var atsaukties vienā kolonnā. Ieliktās tabulas ir tikai viena kolonna bez rindu ierobežojuma.

Piemēram:

 IZVEIDOT TABULU EMP ( EMP_ID NUMURS, EMP_NAME TIPA_NOSAUKUMS) 

Šeit mēs izveidojam parastu tabulu kā EMP un atsaucamies uz ieliktu tabulu TYPE_NAME kā kolonnu.

Q #27) Vai mēs varam saglabāt attēlus datubāzē, un, ja jā, tad kā?

Atbilde: BLOB apzīmē Binary Large Object, kas ir datu tips, ko parasti izmanto attēlu, audio & amp; video failu vai dažu bināro izpildāmo failu glabāšanai. Šis datu tips spēj glabāt datus līdz 4 GB.

Q #28) Ko jūs saprotat ar datubāzes shēmu un ko tā ietver?

Atbilde: Shēma ir datubāzes objektu kopums, kas pieder datubāzes lietotājam, kurš šajā shēmā var izveidot vai manipulēt ar jauniem objektiem. Shēmā var būt jebkurš DB objekts, piemēram, tabula, skats, indeksi, klasteri, saglabātie procs, funkcijas utt.

Q #29) Kas ir datu vārdnīca un kā to var izveidot?

Atbilde: Katru reizi, kad tiek izveidota jauna datubāze, sistēma izveido datubāzei specifisku datu vārdnīcu. Šī vārdnīca pieder lietotājam SYS un tajā tiek saglabāti visi ar datubāzi saistītie metadati. Tajā ir tikai lasīšanai paredzētu tabulu un skatījumu kopums, un tā fiziski tiek glabāta SYSTEM tabulas telpā.

Q #30) Kas ir skats un ar ko tas atšķiras no tabulas?

Atbilde: Skats ir lietotāja definēts datubāzes objekts, ko izmanto SQL vaicājuma rezultātu glabāšanai, uz kuriem vēlāk var atsaukties. Skatos šie dati netiek glabāti fiziski, bet gan kā virtuāla tabula, tāpēc tos var saukt par loģiskām tabulām.

Skats atšķiras no tabulas:

  • Tabulā var glabāt datus, bet ne SQL vaicājuma rezultātus, turpretī skatā var saglabāt vaicājuma rezultātus, kurus var izmantot citā SQL vaicājumā kopumā.
  • Tabulu var atjaunināt vai dzēst, bet skatus nevar atjaunināt vai dzēst.

Q #31) Ko nozīmē strupceļa situācija?

Atbilde: Strupceļš ir situācija, kad divi vai vairāki lietotāji vienlaicīgi gaida datus, kurus viens otrs ir bloķējis. Līdz ar to tiek bloķētas visas lietotāju sesijas.

Q #32) Ko nozīmē indekss?

Atbilde: Indekss ir shēmas objekts, kas tiek izveidots, lai efektīvi meklētu datus tabulā. Indeksus parasti izveido noteiktiem tabulas stabiņiem, kuriem piekļūst visbiežāk. Indeksi var būt klasterizēti vai neklasterizēti.

Q#33) Kas ir ROLE Oracle datubāzē?

Atbilde: Piekļuves piešķiršana atsevišķiem objektiem atsevišķiem lietotājiem ir grūts administratīvs uzdevums. Lai atvieglotu šo darbu, datubāzē tiek izveidota kopīgu privilēģiju grupa, kas pazīstama kā ROLE. Kad ROLE ir izveidota, to var piešķirt vai atsaukt lietotājiem, izmantojot GRANT & amp; REVOKE komandu.

Sintakse:

 IZVEIDOJIET LOMU READ_TABLE_ROLE; PIEŠĶIR READ_TABLE_ROLE SELECT ON EMP; PIEŠĶIR READ_TABLE_ROLE LIETOTĀJAM USER1; ATSAUC READ_TABLE_ROLE NO USER1; 

Q #34) Kādi atribūti ir atrodami kursorā CURSOR?

Atbilde: Kursoram ir dažādi atribūti, kas minēti turpmāk:

(i) %FOUND :

  • Atgriež INVALID_CURSOR, ja kursors ir deklarēts, bet slēgts.
  • Atgriež NULL, ja fetch nav noticis, bet kursors ir atvērts.
  • Atgriež TRUE, ja rindas ir iegūtas veiksmīgi, un FALSE, ja rindas nav atgrieztas.

(ii) NAV atrasts :

  • Atgriež INVALID_CURSOR, ja kursors ir deklarēts, bet slēgts.
  • Atgriež NULL, ja fetch nav noticis, bet kursors ir atvērts.
  • Atgriež FALSE, ja rindas ir veiksmīgi iegūtas, un TRUE, ja rindas netiek atgrieztas.

(iii) %ISOPEN : Atgriež TRUE, ja kursors ir atvērts, citādi FALSE

(iv) %ROWCOUNT : Atgriež iegūto rindu skaitu.

Q #35) Kāpēc mēs PLSQL lietojam %ROWTYPE & amp; %TYPE?

Atbilde: %ROWTYPE & amp; %TYPE ir PL/SQL atribūti, kas var pārmantot datubāzē definētās tabulas datu tipus. Šo atribūtu izmantošanas mērķis ir nodrošināt datu neatkarību un integritāti.

Ja datu bāzē tiek mainīts kāds no datu tipiem vai precizitāte, PL/SQL kods tiek automātiski atjaunināts atbilstoši mainītajam datu tipam.

%TYPE tiek izmantots, lai deklarētu mainīgo, kuram jābūt tāda paša datu tipa kā tabulas kolonnai.

Savukārt %ROWTYPE tiks izmantots, lai definētu pilnu ierakstu rindu, kuras struktūra ir līdzīga tabulas struktūrai.

Q #36) Kāpēc mēs veidojam saglabātās procedūras & amp; Funkcijas PL/SQL un kā tās atšķiras?

Atbilde: Saglabātā procedūra ir SQL izteikumu kopums, kas ir rakstīts, lai veiktu konkrētu uzdevumu. Šos izrakstus var saglabāt datu bāzē kā grupu ar piešķirtu nosaukumu, un tos var kopīgot ar dažādām programmām, ja ir piešķirtas piekļuves atļaujas.

Funkcijas atkal ir apakšprogrammas, kas ir rakstītas, lai veiktu konkrētus uzdevumus, taču starp abām funkcijām ir atšķirības.

Saglabātās procedūras Funkcijas

Uzglabātās procedūras var atgriezt vai neatgriezt vērtību, un tās var atgriezt arī vairākas vērtības. Funkcija vienmēr atgriezīs tikai vienu vērtību.
Saglabātās procedūras var ietvert DML izrakstus, piemēram, insert, update & amp; delete. Funkcijā nevaram izmantot DML izrakstus.
Uzglabātās procedūras var izsaukt funkcijas. Funkcijas nevar izsaukt saglabātās procedūras.
Saglabātās procedūras atbalsta izņēmumu apstrādi, izmantojot bloku Try/Catch. Funkcijas neatbalsta Try/Catch bloku.

Q #37) Kādi ir parametri, kurus mēs varam nodot, izmantojot saglabāto procedūru?

Atbilde: Mēs varam nodot IN, OUT & amp; INOUT parametrus, izmantojot saglabāto procedūru, un tie jādefinē, deklarējot pašu procedūru.

Q #38) Kas ir trigeris un kādi ir tā veidi?

Atbilde: Trigeris ir saglabāta programma, kas ir uzrakstīta tā, lai tā tiktu izpildīta automātiski, kad notiek kāds notikums. Šis notikums var būt jebkura DML vai DDL operācija.

PL/SQL atbalsta divu veidu palaidējus:

  • Rindu līmenis
  • Paziņojuma līmenis

Q #39) Kā PL/SQL valodā var atšķirt globālo mainīgo no lokālā mainīgā?

Atbilde: Globālais mainīgais ir mainīgais, kas tiek definēts programmas sākumā un saglabājas līdz tās beigām. Tam var piekļūt jebkuras programmas metodes vai procedūras, savukārt lokālajam mainīgajam var piekļūt tikai tā procedūra vai metode, kurā tas ir deklarēts.

Q #40) Kas ir paketes PL SQL?

Atbilde: Pakete ir Oracle datubāzē glabātu saistītu datubāzes objektu grupa, piemēram, saglabātie procs, funkcijas, tipi, palaidēji, kursori u. c. Tā ir sava veida saistītu objektu bibliotēka, kurai, ja atļauts, var piekļūt vairākas lietojumprogrammas.

PL/SQL paketes struktūra sastāv no 2 daļām: paketes specifikācijas & amp; paketes ķermeņa.

Secinājums

Es ceru, ka iepriekš uzdotie jautājumi palīdzēs jums gūt priekšstatu par to, kas ir Oracle.

Pat ja jums ir pamatīgas zināšanas par visiem pamatjēdzieniem, ļoti svarīgs ir veids, kā jūs tos pasniegsiet intervijā. Tāpēc esiet mierīgs un droši, bez vilcināšanās stājieties pretī intervijai.

Lasiet NĀKOTĀK 2. daļu: Oracle DBA, RAC un veiktspējas regulēšanas jautājumi

Novēlam jums veiksmi!!

Ieteicamā lasāmviela

    Ritināt uz augšu