top oracle interview questions
En Sık Sorulan Oracle Mülakat Soruları ve Cevapları:
Oracle'ın neredeyse tüm temel kavramlarını kapsayan cevaplarla birlikte en iyi 40 Oracle mülakat sorusu.
Bu, neredeyse tüm Oracle Interview sorularını kapsayan ayrıntılı bir seridir:
Bölüm 1: Oracle Basic, SQL, PL / SQL Soruları (Bu makale)
Bölüm 2: Oracle DBA, RAC ve Performans Ayarlama Soruları
3. Bölüm: Oracle Forms and Reports Röportaj Soruları
Bölüm # 4: Oracle Apps ve Oracle SOA Teknik Görüşme Soruları
Serinin 1. makalesi ile başlayalım.
Bu makalede ele alınan soru türleri:
- Temel Oracle mülakat soruları
- Oracle SQL mülakat soruları
- Oracle PL / SQL mülakat soruları
Anlayışınız için basit örneklerle açıklanan Oracle'ın temellerini bulacaksınız. Bir Oracle röportajına katılmayı planlıyorsanız, bu makalede ele alınan bu sorular kesinlikle çok yardımcı olacaktır.
Hadi devam edelim!!
En Popüler Oracle Mülakat Sorularının Listesi
S # 1) Oracle nedir ve farklı sürümleri nelerdir?
Cevap: Oracle, ilişkisel yönetim kavramları üzerinde çalışan ve dolayısıyla Oracle RDBMS olarak da anılan Oracle Corporation tarafından sağlanan popüler veritabanlarından biridir. Çevrimiçi işlem işleme, veri ambarlama ve kurumsal grid hesaplama için yaygın olarak kullanılmaktadır.
S # 2) Oracle Database Software Release'i nasıl tanımlayacaksınız?
Cevap: Oracle, her sürüm için bir dizi formatı takip eder.
Örneğin ,
Sürüm 10.1.0.1.1 şu şekilde ifade edilebilir:
10: Başlıca DB Yayın Numarası
1: DB Bakım Sürüm Numarası
0: Uygulama Sunucusu Sürüm Numarası
1: Bileşene Özgü Yayın Numarası
1: Platforma Özgü Sürüm Numarası
android için en iyi 10 casus uygulaması
S # 3) VARCHAR ve VARCHAR2'yi nasıl ayırt edeceksiniz?
Cevap: Hem VARCHAR hem de VARCHAR2, değişken uzunluktaki karakter dizilerini depolamak için kullanılan Oracle veri türleridir. Farklılıkları:
- VARCHAR 2000 bayta kadar karakter saklayabilirken, VARCHAR2 4000 bayta kadar saklayabilir.
- VARCHAR, tümü kullanılmasa bile bildirim sırasında tanımlanan karakterler için boşluk tutarken, VARCHAR2 kullanılmayan alanı serbest bırakır.
S # 4) TRUNCATE & DELETE komutu arasındaki fark nedir?
Cevap: Her iki komut da veri tabanından verileri kaldırmak için kullanılır.
İkisi arasındaki fark şunları içerir:
- TRUNCATE bir DDL işlemidir, DELETE ise bir DML işlemidir.
- TRUNCATE, tüm satırları kaldırır ancak tablo yapısını olduğu gibi bırakır. DELETE komutu geri alınabilirken, komutun yürütülmesinden önce ve sonra COMMIT verdiğinden geri alınamaz.
- TRUNCATE komutu nesne depolama alanını serbest bırakırken DELETE komutu bunu yapmaz.
- TRUNCATE, DELETE ile karşılaştırıldığında daha hızlıdır.
S # 5) RAW veri türü ile ne kastedilmektedir?
Cevap: RAW veri türü, değişken uzunluklu ikili verileri veya bayt dizelerini depolamak için kullanılır.
RAW ve VARCHAR2 veri türü arasındaki fark, PL / SQL'in bu veri türünü tanımaması ve dolayısıyla RAW verileri farklı sistemlere aktarıldığında herhangi bir dönüştürme yapamamasıdır. Bu veri türü yalnızca sorgulanabilir veya bir tabloya eklenebilir.
Sözdizimi: RAW (hassas)
S # 6) Birleştirme ile ne kastedilmektedir? Birleştirme türlerini listeleyin.
Cevap: Birleştirmeler, bazı ortak sütunlar veya koşullar kullanarak birden çok tablodan veri çıkarmak için kullanılır.
Aşağıda listelendiği gibi çeşitli Birleştirme türleri vardır:
- İÇ BİRLEŞİM
- DIŞ BİRLEŞTİRME
- CROSS JOINS veya CARTESIAN ÜRÜN
- EQUI JOIN
- ANTI JOIN
- SEMI JOIN
S # 7) SUBSTR ve INSTR işlevleri arasındaki fark nedir?
Cevap:
- SUBSTR işlevi, sağlanan dizeden sayısal değerlerle tanımlanan alt bölümü döndürür.
- Örneğin , (SEÇİN SUBSTR ('Hindistan benim ülkemdir', 1, 4) ikili'den) 'Hindistan' ı döndürür.
- INSTR, dizedeki alt dizenin konum numarasını döndürür.
- Örneğin , (SELECT INSTR ('Hindistan benim ülkem', 'a') dualden) 5 değerini döndürür.
S # 8) Bir Oracle tablosundaki yinelenen değerleri nasıl bulabiliriz?
Cevap: Yinelenen kayıtları getirmek için aşağıdaki örnek sorguyu kullanabiliriz.
SELECT EMP_NAME, COUNT (EMP_NAME) FROM EMP GROUP BY EMP_NAME HAVING COUNT (EMP_NAME) > 1;
S # 9) ON-DELETE-CASCADE ifadesi nasıl iş?
Cevap: ON DELETE CASCADE'i kullanmak, aynısı üst tablodan silindiğinde alt tablodaki bir kaydı otomatik olarak silecektir. Bu ifade Yabancı Anahtarlarla kullanılabilir.
Aşağıdaki komut setini kullanarak mevcut bir tabloya ON DELETE CASCADE seçeneğini ekleyebiliriz.
Sözdizimi:
ALTER TABLE CHILD_T1 ADD CONSTRAINT CHILD_PARENT_FK REFERENCES PARENT_T1 (COLUMN1) ON DELETE CASCADE;
S # 10) NVL işlevi nedir? Bu nasıl kullanılabilir?
Cevap: NVL, bir ifade için null ile karşılaşılırsa kullanıcının değeri değiştirmesine yardımcı olan bir işlevdir.
Aşağıdaki sözdizimi olarak kullanılabilir.
NVL (Value_In, Replace_With)
S # 11) Birincil Anahtar ile Benzersiz Anahtar arasındaki fark nedir?
Cevap: Birincil Anahtar, her tablo satırını benzersiz bir şekilde tanımlamak için kullanılırken, Benzersiz Anahtar, bir tablo sütununda yinelenen değerleri önler.
Aşağıda verilen birkaç farklılık vardır:
- Birincil anahtar, tablodaki yalnızca bir anahtar olabilirken benzersiz anahtarlar birden çok olabilir.
- Benzersiz anahtar birden çok boş değere izin verirken, birincil anahtar hiç boş değer tutamaz.
- Birincil anahtar kümelenmiş bir dizindir, benzersiz bir anahtar ise kümelenmemiş bir dizindir.
S # 12) TRANSLATE komutunun REPLACE'den farkı nedir?
Cevap: TRANSLATE komutu, verilen dizedeki karakterleri yerine koyma karakteriyle tek tek çevirir. REPLACE komutu, bir karakteri veya bir karakter kümesini tam bir ikame dizesiyle değiştirir.
Örneğin:
TRANSLATE (‘Missisippi’,’is’,’15) => M155151pp1 REPLACE (‘Missisippi’,’is’,’15) => M15s15ippi
S # 13) Oracle'da geçerli tarih ve saati nasıl öğrenebiliriz?
Cevap: Oracle'da SYSDATE komutunu kullanarak güncel tarih ve saati bulabiliriz.
Sözdizimi:
SELECT SYSDATE into CURRENT_DATE from dual;
S # 14) Oracle'da COALESCE işlevini neden kullanıyoruz?
Cevap: COALESCE işlevi, ifadede sağlanan bağımsız değişkenler listesinden ilk boş olmayan ifadeyi döndürmek için kullanılır. Bir ifadede en az iki argüman bulunmalıdır.
Sözdizimi:
COALESCE (expr 1, expr 2, expr 3…expr n)
S # 15) STUDENT_REPORT tablosundan 5. RANK öğrencilerini almak için nasıl bir sorgu yazacaksınız?
Cevap: Sorgu aşağıdaki gibi olacaktır:
SELECT TOP 1 RANK FROM (SELECT TOP 5 RANK FROM STUDENT_REPORT ORDER BY RANK DESC) AS STUDENT ORDER BY RANK ASC;
S # 16) GROUP BY cümlesini SQL Sorgusunda ne zaman kullanıyoruz?
Cevap: GROUP BY yan tümcesi, verileri sorgu sonuçlarında bir veya daha fazla sütuna göre tanımlamak ve gruplamak için kullanılır. Bu madde genellikle COUNT, MAX, MIN, SUM, AVG vb. Gibi toplama işlevleriyle kullanılır.
Sözdizimi:
SELECT COLUMN_1, COLUMN_2 FROM TABLENAME WHERE (condition) GROUP BY COLUMN_1, COLUMN_2
S # 17) Bir tablodan verileri almanın en hızlı yolu nedir?
Cevap: Verileri almanın en hızlı yolu, SQL sorgusunda ROWID kullanmaktır.
S # 18) DECODE ve CASE İfadelerini nerede kullanıyoruz?
Cevap: Hem DECODE hem de CASE deyimleri IF-THEN-ELSE ifadesi gibi işlev görür ve bunlar birbirlerinin alternatifleridir. Bu işlevler, Oracle'da veri değerlerini dönüştürmek için kullanılır.
Örneğin:
DECODE İşlevi
Select ORDERNUM, DECODE (STATUS,'O', ‘ORDERED’,'P', ‘PACKED,’S’,’SHIPPED’,’A’,’ARRIVED’) FROM ORDERS;
DURUM Fonksiyon
Select ORDERNUM , CASE (WHEN STATUS ='O' then ‘ORDERED’ WHEN STATUS ='P' then PACKED WHEN STATUS ='S' then ’SHIPPED’ ELSE ’ARRIVED’) END FROM ORDERS;
Her iki komut da sipariş numaralarını aşağıdaki gibi ilgili durumlarıyla gösterecektir:
Eğer,
Durum O = Sipariş Edildi
Durum P = Paketlenmiş
Durum S = Gönderildi
Durum A = Geldi
S # 19) Neden bir veritabanında bütünlük kısıtlamalarına ihtiyacımız var?
Cevap: Veritabanının bütünlüğünü korumak ve tablolara geçersiz verilerin girilmesini önlemek için iş kurallarını uygulamak için bütünlük kısıtlamaları gereklidir. Aşağıda belirtilen kısıtlamaların yardımı ile tablolar arasındaki ilişkiler korunabilir.
Birincil Anahtar, Yabancı Anahtar, EŞSİZ ANAHTAR, NULL DEĞİL ve KONTROL dahil olmak üzere çeşitli bütünlük kısıtlamaları mevcuttur.
S # 20) Oracle'da MERGE ile ne demek istiyorsunuz ve iki tabloyu nasıl birleştirebiliriz?
Cevap: MERGE ifadesi, iki tablodaki verileri birleştirmek için kullanılır. Verileri kaynak tablodan seçer ve MERGE sorgusunda sağlanan koşula göre diğer tabloya ekler / günceller.
Sözdizimi:
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) Oracle'da Toplama işlevlerinin kullanımı nedir?
Cevap: Toplama işlevleri, tek bir değer sağlamak için bir değerler kümesi üzerinde özet işlemleri gerçekleştirir. Kodumuzda hesaplamaları yapmak için kullandığımız birkaç toplama işlevi vardır. Bunlar:
- AVG
- MIN
- MAX
- MİKTAR
- SUM
- STDSAPMA
S # 22) Küme operatörleri UNION, UNION ALL, MINUS & INTERSECT'in yapması gereken nedir?
Cevap: Ayar operatörü, kaynak tablolarda sütunlar ve ilgili veri türleri aynıysa, kullanıcının iki veya ikiden fazla tablodan verileri aynı anda almasını kolaylaştırır.
- BİRLİK operatör, yinelenen satırlar dışında her iki tablodaki tüm satırları döndürür.
- BİRLİĞİ TÜMÜ her iki tablodaki tüm satırları yinelenen satırlarla birlikte döndürür.
- EKSİ ikinci tabloda olmayan ilk tablodan satırları döndürür.
- INTERSECT her iki tablodaki yalnızca ortak satırları döndürür.
S # 23) Oracle'da bir tarihi karaktere dönüştürebilir miyiz ve eğer öyleyse, sözdizimi ne olurdu?
Cevap: Yukarıdaki dönüşümü yapmak için TO_CHAR işlevini kullanabiliriz.
Sözdizimi:
SELECT to_char (to_date ('30-01-2018', 'DD-MM-YYYY'), 'YYYY-MM-DD') FROM dual;
S # 24) Bir veritabanı işlemi ile neyi kastediyorsunuz ve tüm TCL ifadeleri Oracle'da mevcuttur?
Cevap: İşlem, bir dizi SQL ifadesi tek seferde yürütüldüğünde gerçekleşir. Oracle, bu ifadelerin yürütülmesini kontrol etmek için TCL, yani bir dizi ifade kullanan İşlem Kontrol İfadeleri sunmuştur.
İfadeler şunları içerir:
- COMMIT: Bir işlemi kalıcı yapmak için kullanılır.
- GERİ DÖNÜŞ: Kayıt noktasını sonlandırmak için DB durumunu geri almak için kullanılır.
- KAYDETME NOKTASI: Daha sonra geri dönüşün yapılabileceği bir işlem noktasının belirlenmesine yardımcı olur.
S # 25) Bir veritabanı nesnesinden ne anlıyorsunuz? Birkaçını listeleyebilir misin?
Cevap: Verilerin veya verilerin referanslarını bir veritabanında depolamak için kullanılan nesne, veritabanı nesnesi olarak bilinir. Veritabanı; tablolar, görünümler, dizinler, kısıtlamalar, saklı yordamlar, tetikleyiciler vb. Gibi çeşitli DB nesnelerinden oluşur.
S # 26) İç içe geçmiş tablo nedir ve normal bir tablodan farkı nedir?
Cevap: İç içe geçmiş bir tablo, bir tabloda sütun olarak depolanabilen bir veritabanı koleksiyonu nesnesidir. Normal bir tablo oluştururken, iç içe geçmiş bir tablonun tamamına tek bir sütunda referans verilebilir. İç içe geçmiş tablolarda satır kısıtlaması olmayan yalnızca bir sütun vardır.
Örneğin:
CREATE TABLE EMP ( EMP_ID NUMBER, EMP_NAME TYPE_NAME)
Burada, EMP olarak normal bir tablo oluşturuyoruz ve iç içe geçmiş bir tablo TYPE_NAME olarak bir sütun olarak bahsediyoruz.
S # 27) Görüntüleri bir veritabanına kaydedebilir miyiz ve evetse nasıl?
Cevap: BLOB, genellikle görüntüleri, ses ve video dosyalarını veya bazı ikili yürütülebilir dosyaları tutmak için kullanılan bir veri türü olan Binary Large Object'in kısaltmasıdır. Bu veri türü, 4 GB'a kadar veri tutma kapasitesine sahiptir.
S # 28) Veritabanı şemasından ne anlıyorsunuz ve neyi içeriyor?
Cevap: Şema, bu şema içinde yeni nesneler yaratabilen veya değiştirebilen bir veritabanı kullanıcısına ait veritabanı nesneleri koleksiyonudur. Şema, tablo, görünüm, dizinler, kümeler, depolanmış işlemler, işlevler vb. Gibi herhangi bir DB nesnesini içerebilir.
S # 29) Veri sözlüğü nedir ve nasıl oluşturulabilir?
Cevap: Yeni bir veritabanı oluşturulduğunda, veritabanına özgü bir veri sözlüğü sistem tarafından oluşturulur. Bu sözlük, SYS kullanıcısına aittir ve veritabanıyla ilgili tüm meta verileri korur. Bir dizi salt okunur tablo ve görünüme sahiptir ve fiziksel olarak SYSTEM tablo alanında depolanır.
S # 30) Görünüm nedir ve tablodan farkı nedir?
Cevap: View, daha sonra başvurulabilecek bir SQL sorgusunun sonuçlarını depolamak için kullanılan kullanıcı tanımlı bir veritabanı nesnesidir. Görünümler bu verileri fiziksel olarak değil, sanal bir tablo olarak depolar, bu nedenle mantıksal tablo olarak adlandırılabilir.
Görünüm tablodan şu şekilde farklıdır:
- Bir tablo verileri tutabilir ancak SQL sorgu sonuçlarını tutamazken View, başka bir SQL sorgusunda bir bütün olarak kullanılabilen sorgu sonuçlarını kaydedebilir.
- Tablo güncellenebilir veya silinebilir ancak Görünümler bunu yapamaz.
S # 31) Bir kilitlenme durumu ile ne kastedilmektedir?
Cevap: Kilitlenme, iki veya daha fazla kullanıcının aynı anda birbirleri tarafından kilitlenen verileri beklediği bir durumdur. Bu nedenle, engellenen tüm kullanıcı oturumlarına neden olur.
S # 32) Bir indeks ile ne kastedilmektedir?
Cevap: Bir indeks, tablo içinde verileri verimli bir şekilde aramak için oluşturulan bir şema nesnesidir. Dizinler genellikle tablonun en çok erişilen belirli sütunlarında oluşturulur. Dizinler kümelenmiş veya kümelenmemiş olabilir.
S # 33) Oracle veritabanındaki ROLE nedir?
Cevap: Bireysel nesnelere bireysel kullanıcılara erişim vermek zor bir yönetim görevidir. Bu işi kolaylaştırmak için, ROLE olarak bilinen bir veri tabanında bir grup ortak ayrıcalık oluşturulur. ROLE oluşturulduktan sonra GRANT & REVOKE komutu kullanılarak kullanıcılara atanabilir veya onlardan iptal edilebilir.
yardım masası teknisyeni röportaj soruları ve cevapları pdf
Sözdizimi:
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) Bir CURSOR'da bulunan özellikler nelerdir?
Cevap: Bir CURSOR, aşağıda belirtildiği gibi çeşitli niteliklere sahiptir:
(buldum :
- İmleç bildirilmiş ancak kapatılmışsa INVALID_CURSOR döndürür.
- Getirme gerçekleşmediyse ancak imleç sadece açıksa NULL döndürür.
- Satırlar başarıyla getirilirse DOĞRU, herhangi bir satır döndürülmezse YANLIŞ döndürür.
(ii) BULUNAMADI :
- İmleç bildirilmiş ancak kapatılmışsa INVALID_CURSOR döndürür.
- Getirme gerçekleşmediyse ancak imleç sadece açıksa NULL döndürür.
- Satırlar başarıyla getirilirse YANLIŞ, satır döndürülmezse DOĞRU döndürür
(iii)% ISOPEN : İmleç AÇIK ise, aksi takdirde YANLIŞ ise DOĞRU verir
(iv)% ROWCOUNT : Getirilen satırların sayısını döndürür.
S # 35) PLSQL'de neden% ROWTYPE &% TYPE kullanıyoruz?
Cevap: % ROWTYPE &% TYPE, bir veritabanında tanımlanan bir tablonun veri türlerini devralabilen PL / SQL'deki özniteliklerdir. Bu öznitelikleri kullanmanın amacı, veri bağımsızlığı ve bütünlüğü sağlamaktır.
Veritabanında herhangi bir veri türü veya hassasiyet değiştirilirse, PL / SQL kodu değiştirilen veri türüyle otomatik olarak güncellenir.
% TYPE, bir tablo sütunuyla aynı veri türüne sahip olması gereken bir değişkeni bildirmek için kullanılır.
% ROWTYPE, bir tablonun yapısına benzer bir yapıya sahip tam bir kayıt satırını tanımlamak için kullanılacaktır.
S # 36) Neden PL / SQL'de Depolanan Prosedürler ve Fonksiyonlar oluşturuyoruz ve bunlar nasıl farklı?
Cevap: Depolanan yordam, belirli bir görevi gerçekleştirmek için yazılan bir SQL deyimleri kümesidir. Bu ifadeler, veri tabanında atanmış bir adla bir grup olarak kaydedilebilir ve aynı erişim izinleri varsa farklı programlarla paylaşılabilir.
Fonksiyonlar yine belirli görevleri gerçekleştirmek için yazılan alt programlardır ancak ikisi arasında farklılıklar vardır.
Saklanan Prosedürler | Fonksiyonlar |
---|---|
Depolanan Prosedürler bir değer döndürebilir veya dönmeyebilir ve birden çok değer de döndürebilir. | İşlev her zaman yalnızca tek bir değer döndürür. |
Depolanan Prosedürler, ekleme, güncelleme ve silme gibi DML ifadelerini içerebilir. | Bir işlevde DML ifadelerini kullanamayız. |
Depolanan Prosedürler işlevleri çağırabilir. | Fonksiyonlar saklanan prosedürleri çağıramaz. |
Depolanan Prosedürler, Try / Catch bloğunu kullanarak istisna işlemeyi destekler. | Fonksiyonlar Try / Catch bloğunu desteklemez. |
S # 37) Depolanmış bir yordamdan geçebileceğimiz parametreler nelerdir?
Cevap: IN, OUT & INOUT parametrelerini saklı bir prosedürden geçirebiliriz ve prosedürün kendisini bildirirken bunlar tanımlanmalıdır.
S # 38) Tetikleyici nedir ve türleri nelerdir?
Cevap: Tetikleyici, bir olay meydana geldiğinde otomatik olarak yürütülecek şekilde yazılan depolanmış bir programdır. Bu olay herhangi bir DML veya bir DDL işlemi olabilir.
PL / SQL iki tür tetikleyiciyi destekler:
- Satır Düzeyi
- İfade Düzeyi
S # 39) Bir global değişkeni PL / SQL'de yerel bir değişkenle nasıl ayırt edeceksiniz?
Cevap: Global değişken, programın başında tanımlanan ve sonuna kadar ayakta kalan değişkendir. Program içindeki herhangi bir yöntem veya prosedürle erişilebilirken, yerel değişkene erişim, bildirildiği prosedür veya yöntemle sınırlıdır.
S # 40) PL SQL'deki paketler nelerdir?
Cevap: Bir paket, Oracle veritabanında depolanan depolanmış prosedürler, işlevler, türler, tetikleyiciler, imleçler vb. Gibi ilgili veritabanı nesneleri grubudur. İzin verildiği takdirde birden fazla uygulama tarafından erişilebilen ilgili nesnelerin bir tür kitaplığıdır.
PL / SQL Paket yapısı 2 bölümden oluşur: paket özellikleri ve paket gövdesi.
Sonuç
Umarım yukarıdaki sorular Oracle'ın neyle ilgili olduğuna dair bir fikir edinmenize yardımcı olur.
Tüm temel kavramlar hakkında kapsamlı bir bilgiye sahip olsanız bile, röportajda bunları sunma şekliniz çok önemlidir. Bu nedenle sakin olun ve röportajla çekinmeden kendinizden emin bir şekilde yüzleşin.
SONRAKİ Bölüm 2'yi okuyun: Oracle DBA, RAC ve Performans Ayarlama Soruları
Hepinize başarılar dileriz !!
Önerilen Kaynaklar
- Mülakat Soruları ve Cevapları
- En İyi Oracle Apps Teknik ve Oracle SOA Mülakat Soruları
- En Popüler Oracle Formları ve Raporları Mülakat Soruları
- Bazı İlginç Yazılım Testi Görüşme Soruları
- 2021'de En Önemli 30 PL / SQL Mülakat Soruları ve Cevapları
- En Popüler Oracle DBA, RAC ve Performans Ayarlama Mülakat Soruları
- En İyi 90 SQL Mülakat Soruları ve Cevapları (EN SON)
- Yazılım Testi Temel Bilginizi Kontrol Etmek İçin 20 Basit Soru (Çevrimiçi Test)