Soalan Temuduga Oracle Teratas: Soalan Oracle Basic, SQL, PL/SQL

Soalan dan Jawapan Temuduga Oracle Paling Lazim:

40 Soalan Temuduga Oracle Teratas bersama-sama jawapan yang merangkumi hampir semua konsep asas Oracle.

Ini ialah siri mendalam yang merangkumi hampir semua soalan Temuduga Oracle:

Bahagian #1: Soalan Oracle Basic, SQL, PL/SQL (artikel ini)

Bahagian #2: Soalan Oracle DBA, RAC dan Penalaan Prestasi

Bahagian #3: Soalan Temuduga Borang dan Laporan Oracle

Bahagian #4: Aplikasi Oracle dan Soalan Temuduga Teknikal Oracle SOA

Mari kita mulakan dengan Artikel pertama dalam siri ini.

Jenis soalan yang dibincangkan dalam artikel ini:

  • Soalan temu bual Asas Oracle
  • Oracle SQL soalan temu bual
  • soalan temu duga Oracle PL/SQL

Anda akan mendapati asas Oracle dijelaskan dengan contoh mudah untuk pemahaman anda. Jika anda bercadang untuk menghadiri temu duga Oracle, set soalan ini yang dibincangkan dalam artikel ini pasti akan sangat membantu.

Mari kita teruskan!!

Senarai Soalan Temuduga Oracle Teratas

S #1) Apakah Oracle dan apakah edisinya yang berbeza?

Jawapan: Oracle ialah salah satu pangkalan data popular yang disediakan oleh Oracle Corporation, yang berfungsi pada konsep pengurusan perhubungan, dan oleh itu ia dirujuk sebagai Oracle RDBMS juga. Ia digunakan secara meluas untuk dalam talianyang boleh digunakan dalam pertanyaan SQL lain secara keseluruhan.

  • Jadual boleh dikemas kini atau dipadam manakala Views tidak boleh dilakukan.
  • S #31) Apakah yang dimaksudkan dengan situasi jalan buntu?

    Jawapan: Jalan buntu ialah keadaan apabila dua atau lebih pengguna sedang menunggu data secara serentak, yang dikunci oleh satu sama lain. Oleh itu, ia menghasilkan semua sesi pengguna yang disekat.

    S #32) Apakah yang dimaksudkan dengan indeks?

    Jawapan: Indeks ialah objek skema, yang dicipta untuk mencari data dengan cekap dalam jadual. Indeks biasanya dibuat pada lajur tertentu jadual, yang paling banyak diakses. Indeks boleh berkelompok atau tidak berkelompok.

    S#33) Apakah itu PERANAN dalam pangkalan data Oracle?

    Jawapan: Memberi akses kepada objek individu kepada pengguna individu adalah tugas pentadbiran yang sukar. Untuk memudahkan kerja ini, sekumpulan keistimewaan biasa dicipta dalam pangkalan data, yang dikenali sebagai ROLE. PERANAN, setelah dibuat boleh diberikan kepada atau dibatalkan daripada pengguna dengan menggunakan GRANT & BATALKAN arahan.

    Sintaks:

     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; 

    S #34) Apakah atribut yang terdapat dalam KURSOR?

    Jawapan: CURSOR mempunyai pelbagai atribut seperti yang dinyatakan di bawah:

    (i) %FOUND :

    • Mengembalikan INVALID_CURSOR jika kursor telah diisytiharkan tetapi ditutup.
    • Mengembalikan NULL jika pengambilan tidak berlaku tetapi kursor dibuka sahaja.
    • Mengembalikan TRUE, jikabaris berjaya diambil dan FALSE jika tiada baris dikembalikan.

    (ii) NOT FUND :

    • Mengembalikan INVALID_CURSOR jika kursor telah diisytiharkan tetapi ditutup.
    • Mengembalikan NULL jika pengambilan tidak berlaku tetapi kursor dibuka sahaja.
    • Mengembalikan FALSE, jika baris berjaya diambil dan BENAR jika tiada baris dikembalikan

    (iii) %ISOPEN : Mengembalikan TRUE, jika kursor OPEN lain FALSE

    (iv) %ROWCOUNT : Mengembalikan kiraan baris yang diambil .

    S #35) Mengapa kami menggunakan %ROWTYPE & %TYPE dalam PLSQL?

    Jawapan: %ROWTYPE & %TYPE ialah atribut dalam PL/SQL yang boleh mewarisi jenis data jadual yang ditakrifkan dalam pangkalan data. Tujuan menggunakan atribut ini adalah untuk memberikan kebebasan dan integriti data.

    Jika mana-mana jenis data atau ketepatan ditukar dalam pangkalan data, kod PL/SQL akan dikemas kini secara automatik dengan jenis data yang diubah.

    %TYPE digunakan untuk mengisytiharkan pembolehubah yang perlu mempunyai jenis data yang sama seperti lajur jadual.

    Manakala %ROWTYPE akan digunakan untuk menentukan baris rekod lengkap yang mempunyai struktur yang serupa dengan struktur daripada jadual.

    S #36) Mengapakah kita membuat Prosedur Tersimpan & Fungsi dalam PL/SQL dan bagaimana ia berbeza?

    Jawapan: Prosedur tersimpan ialah satu set pernyataan SQL yang ditulis untuk melaksanakan tugas tertentu. Kenyataan ini boleh disimpan sebagai kumpulan dalam pangkalan datadengan nama yang ditetapkan dan boleh dikongsi dengan atur cara yang berbeza jika ada kebenaran untuk mengakses yang sama.

    Fungsi sekali lagi adalah subprogram yang ditulis untuk melaksanakan tugas tertentu tetapi terdapat perbezaan antara kedua-duanya.

    Prosedur Tersimpan Fungsi

    Prosedur Tersimpan mungkin atau mungkin tidak mengembalikan nilai dan boleh mengembalikan berbilang nilai juga. Fungsi akan sentiasa mengembalikan nilai tunggal sahaja.
    Prosedur Tersimpan boleh termasuk pernyataan DML seperti masukkan, kemas kini & padam. Kami tidak boleh menggunakan pernyataan DML dalam fungsi.
    Prosedur Tersimpan boleh memanggil fungsi. Fungsi tidak boleh memanggil prosedur tersimpan.
    Prosedur Tersimpan menyokong pengendalian pengecualian menggunakan blok Try/Catch. Fungsi tidak menyokong blok Try/Catch.

    S #37) Apakah parameter yang boleh kita lalui melalui prosedur tersimpan?

    Jawapan: Kita boleh lulus MASUK, KELUAR & Parameter INOUT melalui prosedur tersimpan dan ia harus ditakrifkan semasa mengisytiharkan prosedur itu sendiri.

    S #38) Apakah pencetus dan apakah jenisnya?

    Jawapan: Pencetus ialah atur cara yang disimpan yang ditulis sedemikian rupa sehingga ia dilaksanakan secara automatik apabila beberapa peristiwa berlaku. Acara ini boleh menjadi mana-mana DML atau operasi DDL.

    PL/SQL menyokong dua jenispencetus:

    • Tahap Baris
    • Tahap Penyata

    S #39) Bagaimanakah anda akan membezakan pembolehubah global daripada tempatan pembolehubah dalam PL/SQL?

    Jawapan: Pembolehubah global ialah pembolehubah, yang ditakrifkan pada permulaan program dan bertahan sehingga akhir. Ia boleh diakses oleh sebarang kaedah atau prosedur dalam atur cara, manakala akses kepada pembolehubah tempatan terhad kepada prosedur atau kaedah di mana ia diisytiharkan.

    S #40) Apakah pakej dalam PL SQL?

    Jawapan: Pakej ialah sekumpulan objek pangkalan data yang berkaitan seperti proc yang disimpan, fungsi, jenis, pencetus, kursor, dsb. yang disimpan dalam pangkalan data Oracle . Ia adalah sejenis perpustakaan objek berkaitan yang boleh diakses oleh berbilang aplikasi jika dibenarkan.

    Struktur pakej PL/SQL terdiri daripada 2 bahagian: spesifikasi pakej & badan pakej.

    Kesimpulan

    Saya harap set soalan di atas akan membantu anda mendapatkan gambaran tentang maksud Oracle.

    Walaupun anda mempunyai jawapan yang teliti. pengetahuan tentang semua konsep asas, cara anda menyampaikannya dalam temu duga adalah sangat penting. Oleh itu, bertenang dan hadapi temu duga dengan yakin tanpa sebarang keraguan.

    Baca SETERUSNYA Bahagian 2: Soalan Oracle DBA, RAC dan Penalaan Prestasi

    Kami mendoakan kejayaan anda semua!!

    Bacaan Disyorkan

    pemprosesan transaksi, pergudangan data dan pengkomputeran grid perusahaan.

    S #2) Bagaimanakah anda akan mengenal pasti Keluaran Perisian Pangkalan Data Oracle?

    Jawapan: Oracle mengikuti beberapa format untuk setiap keluaran.

    Sebagai Contoh ,

    Keluaran 10.1.0.1.1 boleh dirujuk sebagai:

    10: Nombor Keluaran DB Utama

    1: Nombor Keluaran Penyelenggaraan DB

    0: Nombor Keluaran Pelayan Aplikasi

    1: Nombor Keluaran Khusus Komponen

    1: Nombor Keluaran Khusus Platform

    S #3) Bagaimanakah anda akan membezakan antara VARCHAR & VARCHAR2?

    Jawapan: Kedua-dua VARCHAR & VARCHAR2 ialah jenis data Oracle yang digunakan untuk menyimpan rentetan aksara dengan panjang berubah-ubah. Perbezaannya ialah:

    • VARCHAR boleh menyimpan aksara sehingga 2000 bait manakala VARCHAR2 boleh menyimpan sehingga 4000 bait.
    • VARCHAR akan memegang ruang untuk aksara yang ditakrifkan semasa pengisytiharan walaupun semua mereka tidak digunakan manakala VARCHAR2 akan melepaskan ruang yang tidak digunakan.

    S #4) Apakah perbezaan antara TRUNCATE & PADAM arahan?

    Jawapan: Kedua-dua arahan digunakan untuk mengalih keluar data daripada pangkalan data.

    Perbezaan antara keduanya termasuk:

    • TRUNCATE ialah operasi DDL manakala DELETE ialah operasi DML.
    • TRUNCATE  mengalih keluar semua baris tetapi membiarkan struktur jadual tetap utuh. Ia tidak boleh digulung semula seperti itumengeluarkan COMMIT sebelum dan selepas pelaksanaan perintah manakala perintah DELETE boleh digulung semula.
    • Arahan TRUNCATE akan mengosongkan ruang storan objek manakala arahan DELETE tidak.
    • TRUNCATE lebih pantas berbanding dengan PADAM.

    S #5) Apakah yang dimaksudkan dengan jenis data RAW?

    Jawapan: jenis data RAW digunakan untuk menyimpan pembolehubah- panjang data binari atau rentetan bait.

    Perbezaan antara RAW & Jenis data VARCHAR2 ialah PL/SQL tidak mengenali jenis data ini dan oleh itu, tidak boleh melakukan sebarang penukaran apabila data RAW dipindahkan ke sistem yang berbeza. Jenis data ini hanya boleh disoal atau disisipkan dalam jadual.

    Sintaks: RAW (ketepatan)

    S #6) Apakah yang dimaksudkan dengan Gabungan? Senaraikan jenis Cantuman.

    Jawapan: Cantuman digunakan untuk mengekstrak data daripada berbilang jadual menggunakan beberapa lajur atau syarat biasa.

    Terdapat pelbagai jenis Cantuman seperti yang disenaraikan di bawah:

    • SERTAI DALAM
    • SERTAI LUAR
    • CROSS JOIN atau PRODUK CARTESIAN
    • SERTAI EQUI
    • ANTI JOIN
    • SEPARUH JOIN

    S #7) Apakah perbezaan antara SUBSTR & Fungsi INSTR?

    Jawapan:

    • Fungsi SUBSTR mengembalikan subbahagian yang dikenal pasti oleh nilai angka daripada rentetan yang disediakan.
      • Sebagai Contoh , [SELECT SUBSTR ('India is my country, 1, 4) from dual] akan mengembalikan "Indi".
    • INSTR akan mengembalikan nombor kedudukan sub-rentetan dalam rentetan.
      • Sebagai Contoh , [SELECT INSTR ('India is my country, 'a') from dual] akan kembali 5.

    S #8) Bagaimanakah kita boleh mengetahui nilai pendua dalam jadual Oracle?

    Jawapan: Kita boleh menggunakan contoh pertanyaan di bawah untuk mengambil rekod pendua.

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

    S #9) Bagaimanakah pernyataan ON-DELETE-CASCADE berfungsi?

    Jawapan: Menggunakan ON DELETE CASCADE akan memadamkan rekod dalam jadual anak secara automatik apabila rekod yang sama dipadamkan daripada jadual induk. Pernyataan ini boleh digunakan dengan Kekunci Asing.

    Kami boleh menambah pilihan ON DELETE CASCADE pada jadual sedia ada menggunakan set perintah di bawah.

    Sintaks:

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

    Q #10) Apakah fungsi NVL? Bagaimanakah ia boleh digunakan?

    Jawapan: NVL ialah fungsi yang membantu pengguna menggantikan nilai jika null ditemui untuk ungkapan.

    Ia boleh digunakan sebagai sintaks di bawah.

    NVL (Value_In, Replace_With)

    S #11) Apakah perbezaan antara Kunci Utama & Kunci Unik?

    Jawapan: Kunci Utama digunakan untuk mengenal pasti setiap baris jadual secara unik, manakala Kunci Unik menghalang nilai pendua dalam lajur jadual.

    Di bawah adalah beberapa perbezaan:

    • Kunci utama hanya boleh menjadi satu di atas meja manakala kunci unik boleh berbilang.
    • Kunci utama tidak boleh disimpan nilai null sama sekali manakala kunci unik membenarkan berbilang nilai null.
    • Yang utamakunci ialah indeks berkelompok manakala kunci unik ialah indeks bukan berkelompok.

    S #12) Bagaimanakah perintah TRANSLATE berbeza daripada REPLACE?

    Jawapan: Arahan TRANSLATE menterjemah aksara satu demi satu dalam rentetan yang disediakan dengan aksara penggantian. Perintah REPLACE akan menggantikan aksara atau set aksara dengan rentetan penggantian lengkap.

    Sebagai Contoh:

     TRANSLATE (‘Missisippi’,’is’,’15) => M155151pp1 REPLACE (‘Missisippi’,’is’,’15) =>  M15s15ippi 

    S #13) Bagaimana kita boleh mencari keluar tarikh dan masa semasa dalam Oracle?

    Jawapan: Kita boleh mencari tarikh semasa & masa menggunakan arahan SYSDATE dalam Oracle.

    Sintaks:

    SELECT SYSDATE into CURRENT_DATE from dual;

    S #14) Mengapakah kita menggunakan fungsi COALESCE dalam Oracle?

    Jawapan: Fungsi COALESCE digunakan untuk mengembalikan ungkapan bukan nol pertama daripada senarai argumen yang disediakan dalam ungkapan. Mesti ada sekurang-kurangnya dua argumen dalam ungkapan.

    Sintaks:

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

    S #15) Bagaimanakah anda akan menulis pertanyaan untuk mendapatkan PANGKAT ke-5 pelajar dari jadual STUDENT_REPORT?

    Jawapan: Pertanyaannya adalah seperti berikut:

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

    S #16) Bilakah kita menggunakan GROUP Klausa BY dalam SQL Query?

    Jawapan: GROUP BY klausa digunakan untuk mengenal pasti dan mengumpulkan data mengikut satu atau lebih lajur dalam hasil pertanyaan. Klausa ini sering digunakan dengan fungsi agregat seperti COUNT, MAX, MIN, SUM, AVG, dll.

    Sintaks:

     SELECT COLUMN_1, COLUMN_2 FROM TABLENAME WHERE [condition] GROUP BY COLUMN_1, COLUMN_2 

    S #17) Apakah ialah cara terpantas untuk mengambil data daripada ajadual?

    Jawapan: Cara paling cepat untuk mengambil data ialah menggunakan ROWID dalam pertanyaan SQL.

    S #18) Di mana adakah kita menggunakan DECODE dan CASE Statements?

    Jawapan: Kedua-dua DECODE & Kenyataan CASE akan berfungsi seperti pernyataan IF-THEN-ELSE dan ia adalah alternatif untuk satu sama lain. Fungsi ini digunakan dalam Oracle untuk mengubah nilai data.

    Sebagai Contoh:

    Fungsi DECODE

     Select ORDERNUM, DECODE (STATUS,'O', ‘ORDERED’,'P', ‘PACKED,’S’,’SHIPPED’,’A’,’ARRIVED’) FROM ORDERS; 

    KES Fungsi

     Select ORDERNUM , CASE (WHEN STATUS ='O' then ‘ORDERED’ WHEN STATUS ='P' then PACKED WHEN STATUS ='S' then ’SHIPPED’ ELSE ’ARRIVED’) END FROM ORDERS; 

    Kedua-dua arahan akan memaparkan nombor pesanan dengan status masing-masing sebagai,

    Jika,

    Status O= Dipesan

    Status P= Dikemas

    Status S= Dihantar

    Status A= Tiba

    S #19) Mengapakah kita memerlukan kekangan integriti dalam pangkalan data?

    Jawapan: Kekangan integriti diperlukan untuk menguatkuasakan peraturan perniagaan untuk mengekalkan integriti pangkalan data dan menghalang kemasukan data tidak sah ke dalam jadual. Dengan bantuan kekangan yang dinyatakan di bawah, perhubungan boleh dikekalkan antara jadual.

    Pelbagai kekangan integriti tersedia termasuk Kunci Utama, Kunci Asing, KUNCI UNIK, BUKAN NULL & SEMAK.

    S #20) Apakah yang anda maksudkan dengan MERGE dalam Oracle dan bagaimana kita boleh menggabungkan dua jadual?

    Jawapan: The MERGE pernyataan digunakan untuk menggabungkan data daripada dua jadual. Ia memilih data daripada jadual sumber dan memasukkan/kemas kini dalam jadual lain berdasarkansyarat yang disediakan dalam pertanyaan MERGE.

    Sintaks:

     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  

    S #21) Apakah kegunaan fungsi Agregat dalam Oracle?

    Jawapan: Fungsi agregat melaksanakan operasi ringkasan pada set nilai untuk memberikan satu nilai. Terdapat beberapa fungsi agregat yang kami gunakan dalam kod kami untuk melakukan pengiraan. Ini ialah:

    • AVG
    • MIN
    • MAX
    • KIRA
    • JUMLAH
    • STDEV

    S #22) Apakah operator set UNION, UNION ALL, MINUS & INTERSECT yang dimaksudkan untuk dilakukan?

    Jawapan: Pengendali set memudahkan pengguna untuk mengambil data daripada dua atau lebih daripada dua jadual sekaligus jika lajur dan jenis data relatif adalah sama dalam jadual sumber.

    • UNION operator mengembalikan semua baris daripada kedua-dua jadual kecuali baris pendua.
    • UNION ALL mengembalikan semua baris daripada kedua-dua jadual bersama-sama dengan baris pendua.
    • TOLAK mengembalikan baris daripada jadual pertama, yang tidak wujud dalam jadual kedua.
    • INTERSECT hanya mengembalikan baris biasa dalam kedua-dua jadual.

    S #23) Bolehkah kita menukar tarikh kepada aksara dalam Oracle dan jika ya, apakah sintaksnya?

    Jawapan: Kita boleh menggunakan fungsi TO_CHAR untuk melakukan penukaran di atas.

    Sintaks:

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

    S #24) Apakah yang anda maksudkan dengan transaksi pangkalan data & apakah semua pernyataan TCL yang tersedia dalam Oracle?

    Jawapan: Transaksiberlaku apabila satu set pernyataan SQL dilaksanakan sekali gus. Untuk mengawal pelaksanaan penyata ini, Oracle telah memperkenalkan TCL iaitu Penyata Kawalan Transaksi yang menggunakan set penyata.

    Set penyata termasuk:

    • COMMIT: Digunakan untuk membuat transaksi kekal.
    • ROLLBACK: Digunakan untuk melancarkan keadaan DB untuk mengekalkan titik komit.
    • SAVEPOINT: Membantu untuk menentukan titik urus niaga yang boleh dilakukan kembali kemudian.

    S #25) Apakah yang anda faham tentang objek pangkalan data? Bolehkah anda menyenaraikan beberapa daripadanya?

    Jawapan: Objek yang digunakan untuk menyimpan data atau rujukan data dalam pangkalan data dikenali sebagai objek pangkalan data. Pangkalan data terdiri daripada pelbagai jenis objek DB seperti jadual, paparan, indeks, kekangan, prosedur tersimpan, pencetus, dll.

    S #26) Apakah jadual bersarang dan bagaimana ia berbeza daripada jadual biasa?

    Jawapan: Jadual bersarang ialah objek koleksi pangkalan data, yang boleh disimpan sebagai lajur dalam jadual. Semasa membuat jadual biasa, keseluruhan jadual bersarang boleh dirujuk dalam satu lajur. Jadual bersarang hanya mempunyai satu lajur tanpa sekatan baris.

    Sebagai Contoh:

     CREATE TABLE EMP ( EMP_ID NUMBER, EMP_NAME  TYPE_NAME) 

    Di sini, kami mencipta jadual biasa sebagai EMP dan merujuk kepada jadual bersarang TYPE_NAME sebagai lajur.

    S #27) Bolehkah kita menyimpan imej dalam pangkalan data dan jika ya, bagaimana?

    Jawapan: BLOB bermaksud Binary Large Object, iaitu jenis data yang biasanya digunakan untuk menyimpan imej, audio & fail video, atau beberapa boleh laku binari. Jenis data ini mempunyai kapasiti menyimpan data sehingga 4 GB.

    S #28) Apakah yang anda fahami tentang skema pangkalan data dan apakah yang terkandung di dalamnya?

    Jawapan: Skema ialah koleksi objek pangkalan data yang dimiliki oleh pengguna pangkalan data yang boleh mencipta atau memanipulasi objek baharu dalam skema ini. Skema boleh mengandungi sebarang objek DB seperti jadual, paparan, indeks, kelompok, proc yang disimpan, fungsi, dll.

    S #29) Apakah kamus data dan bagaimanakah ia boleh dicipta?

    Jawapan: Setiap kali pangkalan data baharu dicipta, kamus data khusus pangkalan data akan dibuat oleh sistem. Kamus ini dimiliki oleh pengguna SYS dan mengekalkan semua metadata yang berkaitan dengan pangkalan data. Ia mempunyai satu set jadual baca sahaja dan paparan dan ia disimpan secara fizikal dalam ruang jadual SISTEM.

    S #30) Apakah itu Paparan dan bagaimana ia berbeza daripada jadual?

    Jawapan: View ialah objek pangkalan data yang ditentukan pengguna yang digunakan untuk menyimpan hasil pertanyaan SQL, yang boleh dirujuk kemudian. Paparan tidak menyimpan data ini secara fizikal tetapi sebagai jadual maya, oleh itu ia boleh dirujuk sebagai jadual logik.

    Paparan berbeza daripada jadual:

    • Jadual boleh menyimpan data tetapi bukan hasil pertanyaan SQL manakala View boleh menyimpan hasil pertanyaan,
    Gulung ke atas