top oracle interview questions
Найчастіші запитання та відповіді на інтерв’ю Oracle:
40 найкращих запитань для співбесіди з Oracle, а також відповіді, що охоплюють майже всі основні поняття Oracle.
Це поглиблена серія, яка охоплює майже всі питання інтерв’ю Oracle:
Частина 1: Питання щодо Oracle Basic, SQL, PL / SQL (Ця стаття)
Частина 2: Запитання щодо Oracle DBA, RAC та налаштування продуктивності
Частина No3: Запитання щодо інтерв’ю у формах та звітах Oracle
Частина No4: Додатки Oracle та запитання щодо технічного інтерв’ю Oracle SOA
Почнемо з 1-ї статті в серії.
Типи питань, висвітлених у цій статті:
- Основні запитання для співбесіди Oracle
- Запитання щодо інтерв’ю Oracle SQL
- Запитання щодо інтерв’ю Oracle PL / SQL
Ви знайдете основи Oracle, пояснені на простих прикладах для вашого розуміння. Якщо ви плануєте взяти участь в співбесіді з Oracle, ці набори питань, висвітлені в цій статті, безумовно допоможуть.
Давайте вперед !!
Список найпопулярніших запитань щодо інтерв’ю Oracle
Q # 1) Що таке Oracle і які його різні видання?
Відповідь: Oracle - одна з популярних баз даних, що надається корпорацією Oracle, яка працює над концепціями реляційного управління, і тому її також називають СУБД Oracle. Він широко використовується для обробки онлайн-транзакцій, зберігання даних та обчислення корпоративних мереж.
Запитання №2) Як визначити випуск програмного забезпечення Oracle Database?
Відповідь: Oracle дотримується ряду форматів для кожного випуску.
Наприклад ,
Випуск 10.1.0.1.1 можна називати:
10: Номер основного випуску БД
один: Номер випуску технічного обслуговування БД
0: Номер випуску сервера додатків
один: Номер випуску для компонента
один: Номер випуску платформи
тип помилок при тестуванні програмного забезпечення
Запитання №3) Як ви будете розрізняти VARCHAR та VARCHAR2?
Відповідь: І VARCHAR, і VARCHAR2 - це типи даних Oracle, які використовуються для зберігання рядків символів змінної довжини. Їх відмінності:
- VARCHAR може зберігати символи до 2000 байт, тоді як VARCHAR2 може зберігати до 4000 байт.
- VARCHAR буде містити простір для символів, визначених під час оголошення, навіть якщо всі вони не використовуються, тоді як VARCHAR2 звільнить невикористаний простір.
Q # 4) Яка різниця між командою TRUNCATE & DELETE?
Відповідь: Обидві команди використовуються для видалення даних з бази даних.
Різниця між ними включає:
- TRUNCATE - це операція DDL, тоді як DELETE - операція DML.
- TRUNCATE видаляє всі рядки, але залишає структуру таблиці недоторканою. Його не можна відкотити назад, оскільки він видає COMMIT до і після виконання команди, тоді як команду DELETE можна відкотити назад.
- Команда TRUNCATE звільняє простір для зберігання об'єктів, тоді як команда DELETE ні.
- TRUNCATE швидше порівняно з DELETE.
Q # 5) Що мається на увазі під типом даних RAW?
Відповідь: Тип даних RAW використовується для зберігання двійкових даних змінної довжини або рядків байтів.
Різниця між типом даних RAW і VARCHAR2 полягає в тому, що PL / SQL не розпізнає цей тип даних, а отже, не може виконувати жодних перетворень, коли дані RAW передаються в різні системи. Цей тип даних можна лише запитувати або вставляти в таблицю.
Синтаксис: RAW (точність)
Q # 6) Що мається на увазі під Joins? Перелічіть типи об’єднань.
Відповідь: Об’єднання використовуються для вилучення даних з декількох таблиць за допомогою деяких загальних стовпців або умов.
Існують різні типи об’єднань, перелічені нижче:
- ВНУТРІШНЄ З'ЄДНАННЯ
- ВНЕШНЄ ПРИЄДНАННЯ
- ХРЕСТОВЕ ПРИЄДНАННЯ або КАРТЕЗОВИЙ ВИРОБ
- ПРИЄДНАЙТЕСЬ ДО EQUI
- АНТИ ПРИЄДНАЙТЕСЬ
- НАПІВ ПРИЄДНАТИСЯ
Q # 7) Яка різниця між функціями SUBSTR & INSTR?
Відповідь:
- Функція SUBSTR повертає підчастину, визначену числовими значеннями, із наданого рядка.
- Наприклад , (SELECT SUBSTR («Індія - моя країна», 1, 4) із подвійного) поверне значення «Indi».
- INSTR поверне номер позиції підрядка всередині рядка.
- Наприклад , (SELECT INSTR („Індія - моя країна“, „a“) із dual) поверне 5.
Q # 8) Як ми можемо виявити повторювані значення в таблиці Oracle?
Відповідь: Ми можемо використати наведений нижче приклад запиту для отримання дублікатів записів.
SELECT EMP_NAME, COUNT (EMP_NAME) FROM EMP GROUP BY EMP_NAME HAVING COUNT (EMP_NAME) > 1;
Q # 9) Як виглядає твердження ON-DELETE-CASCADE робота?
Відповідь: Використання ON DELETE CASCADE автоматично видаляє запис у дочірній таблиці, коли той самий видаляється з батьківської таблиці. Це твердження можна використовувати з іноземними ключами.
Ми можемо додати опцію ON DELETE CASCADE до існуючої таблиці, використовуючи набір команд нижче.
Синтаксис:
ALTER TABLE CHILD_T1 ADD CONSTRAINT CHILD_PARENT_FK REFERENCES PARENT_T1 (COLUMN1) ON DELETE CASCADE;
Q # 10) Що таке функція NVL? Як його можна використовувати?
Відповідь: NVL - це функція, яка допомагає користувачеві замінити значення, якщо для виразу зустрічається значення null.
Його можна використовувати як наведений нижче синтаксис.
NVL (Value_In, Replace_With)
Q # 11) Яка різниця між первинним ключем та унікальним ключем?
Відповідь: Первинний ключ використовується для унікальної ідентифікації кожного рядка таблиці, тоді як Унікальний ключ запобігає повторювані значення в стовпці таблиці.
Нижче наведено кілька відмінностей:
- Первинний ключ може бути лише одним на столі, тоді як унікальні ключі можуть бути декількома.
- Первинний ключ не може вміщувати нульове значення взагалі, тоді як унікальний ключ допускає кілька нульових значень.
- Первинний ключ - це кластерний індекс, тоді як унікальний ключ - некластеризований індекс.
Q # 12) Чим команда TRANSLATE відрізняється від REPLACE?
Відповідь: Команда TRANSLATE переводить символи по одному в наданому рядку із символом заміни. Команда REPLACE замінить символ або набір символів повним рядком заміни.
Наприклад:
TRANSLATE (‘Missisippi’,’is’,’15) => M155151pp1 REPLACE (‘Missisippi’,’is’,’15) => M15s15ippi
Q # 13) Як ми можемо дізнатись поточну дату та час в Oracle?
Відповідь: Ми можемо знайти поточну дату та час за допомогою команди SYSDATE в Oracle.
Синтаксис:
SELECT SYSDATE into CURRENT_DATE from dual;
Q # 14) Чому ми використовуємо функцію COALESCE в Oracle?
Відповідь: Функція COALESCE використовується для повернення першого ненульового виразу зі списку аргументів, наданих у виразі. У виразі має бути мінімум два аргументи.
Синтаксис:
COALESCE (expr 1, expr 2, expr 3…expr n)
Q # 15) Як ви напишете запит, щоб отримати студентів 5-го РАНГУ із таблиці STUDENT_REPORT?
Відповідь: Запит буде таким:
SELECT TOP 1 RANK FROM (SELECT TOP 5 RANK FROM STUDENT_REPORT ORDER BY RANK DESC) AS STUDENT ORDER BY RANK ASC;
Q # 16) Коли ми використовуємо речення GROUP BY у запиті SQL?
Відповідь: Речення GROUP BY використовується для ідентифікації та групування даних за одним або кількома стовпцями в результатах запиту. Цей пункт часто використовується із сукупними функціями, такими як COUNT, MAX, MIN, SUM, AVG тощо.
Синтаксис:
SELECT COLUMN_1, COLUMN_2 FROM TABLENAME WHERE (condition) GROUP BY COLUMN_1, COLUMN_2
Q # 17) Який найшвидший спосіб отримати дані з таблиці?
Відповідь: Найшвидшим способом отримання даних було б використання ROWID у запиті SQL.
Запитання №18) Де ми використовуємо заяви ДЕКОДУВАННЯ та СПРАВИ?
Відповідь: Обидва оператори DECODE & CASE функціонуватимуть як оператор IF-THEN-ELSE, і вони є альтернативами один одному. Ці функції використовуються в Oracle для перетворення значень даних.
Наприклад:
ДЕКОДУЙ Функція
Select ORDERNUM, DECODE (STATUS,'O', ‘ORDERED’,'P', ‘PACKED,’S’,’SHIPPED’,’A’,’ARRIVED’) FROM ORDERS;
СПРАВА Функція
Select ORDERNUM , CASE (WHEN STATUS ='O' then ‘ORDERED’ WHEN STATUS ='P' then PACKED WHEN STATUS ='S' then ’SHIPPED’ ELSE ’ARRIVED’) END FROM ORDERS;
Обидві команди відображатимуть номери замовлень із відповідним статусом як,
Якщо
Статус O = Впорядковано
Статус P = упаковано
Статус S = Відвантажено
Статус A = Прибув
Q # 19) Навіщо нам потрібні обмеження цілісності в базі даних?
Відповідь: Обмеження цілісності необхідні для забезпечення ділових правил, щоб підтримувати цілісність бази даних і запобігати введенню недійсних даних до таблиць. За допомогою згаданих обмежень можна підтримувати взаємозв'язки між таблицями.
Доступні різні обмеження цілісності, які включають Первинний ключ, Зовнішній ключ, УНІКАЛЬНИЙ КЛЮЧ, НЕ НУЛЬНИЙ І ПРОВЕРКА.
Q # 20) Що ви маєте на увазі під MERGE в Oracle і як ми можемо об’єднати дві таблиці?
Відповідь: Оператор MERGE використовується для об'єднання даних з двох таблиць. Він вибирає дані з вихідної таблиці та вставляє / оновлює їх в іншу таблицю на основі умови, наданої в запиті MERGE.
Синтаксис:
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
Питання # 21) Яке використання агрегатних функцій в Oracle?
Відповідь: Сукупні функції виконують підсумовані операції з набором значень для надання єдиного значення. Існує кілька сукупних функцій, які ми використовуємо в коді для виконання обчислень. Це:
перетворити масив char на int c ++
- AVG
- ХВ
- МАКС
- РАХУВАТИ
- СУММА
- СТДЕВ
Q # 22) Що мають робити оператори UNION, UNION ALL, MINUS & INTERSECT?
Відповідь: Оператор набору дозволяє користувачеві отримувати дані з двох або більше двох таблиць одночасно, якщо стовпці та відносні типи даних однакові у вихідних таблицях.
- СОЮЗ оператор повертає всі рядки з обох таблиць, крім повторюваних рядків.
- СОЮЗ ВСІХ повертає всі рядки з обох таблиць разом із повторюваними рядками.
- МІНУС повертає рядки з першої таблиці, якої немає у другій таблиці.
- ІНТЕРСЕКТ повертає лише загальні рядки в обох таблицях.
Q # 23) Чи можемо ми перетворити дату на char в Oracle, і якщо так, то яким би був синтаксис?
Відповідь: Ми можемо використовувати функцію TO_CHAR, щоб виконати вищевказане перетворення.
Синтаксис:
SELECT to_char (to_date ('30-01-2018', 'DD-MM-YYYY'), 'YYYY-MM-DD') FROM dual;
Питання # 24) Що ви маєте на увазі під транзакцією бази даних і які всі оператори TCL доступні в Oracle?
Відповідь: Транзакція відбувається, коли набір операторів SQL виконується за один раз. Для контролю виконання цих операторів Oracle представила TCL, тобто Заяви про управління транзакціями, які використовують набір операторів.
Набір тверджень включає:
- Здійснити: Використовується для здійснення транзакції постійною.
- Відкат: Використовується для відкочування стану БД до останньої точки коміту.
- SAVEPOINT: Допомагає вказати точку транзакції, до якої згодом можна зробити відкат.
Питання # 25) Що ви розумієте під об'єктом бази даних? Чи можете ви перелічити кілька з них?
Відповідь: Об'єкт, що використовується для зберігання даних або посилань на дані в базі даних, відомий як об'єкт бази даних. База даних складається з різних типів об’єктів БД, таких як таблиці, подання, індекси, обмеження, збережені процедури, тригери тощо.
Q # 26) Що таке вкладена таблиця і чим вона відрізняється від звичайної таблиці?
Відповідь: Вкладена таблиця - це об’єкт колекції баз даних, який можна зберігати як стовпець у таблиці. Під час створення звичайної таблиці на всю вкладену таблицю можна посилатися в одному стовпці. Вкладені таблиці мають лише один стовпець без обмеження рядків.
Наприклад:
CREATE TABLE EMP ( EMP_ID NUMBER, EMP_NAME TYPE_NAME)
Тут ми створюємо звичайну таблицю як EMP і посилаємось на вкладену таблицю TYPE_NAME як на стовпець.
Q # 27) Чи можемо ми зберігати зображення в базі даних, і якщо так, то як?
Відповідь: BLOB розшифровується як Binary Large Object, що є типом даних, який зазвичай використовується для зберігання зображень, аудіо- та відеофайлів або деяких двійкових виконуваних файлів. Цей тип даних може вміщати дані до 4 ГБ.
Q # 28) Що ви розумієте під схемою бази даних і що вона містить?
Відповідь: Схема - це сукупність об’єктів бази даних, що належать користувачеві бази даних, який може створювати або обробляти нові об’єкти в цій схемі. Схема може містити будь-які об'єкти БД, такі як таблиця, подання, індекси, кластери, збережені procs, функції тощо.
Q # 29) Що таке словник даних і як його можна створити?
Відповідь: Щоразу, коли створюється нова база даних, система створює специфічний словник даних. Цей словник належить користувачеві SYS і зберігає всі метадані, пов’язані з базою даних. Він має набір таблиць і подань, доступних лише для читання, і він фізично зберігається в табличному просторі СИСТЕМА.
Q # 30) Що таке вигляд і чим він відрізняється від таблиці?
Відповідь: Перегляд - це визначений користувачем об'єкт бази даних, який використовується для зберігання результатів запиту SQL, на який можна посилатися пізніше. Представлення не зберігають ці дані фізично, а як віртуальну таблицю, отже, їх можна називати логічною таблицею.
Вигляд відрізняється від таблиці як:
- Таблиця може містити дані, але не результати запитів SQL, тоді як View може зберігати результати запиту, які можуть бути використані в іншому запиті SQL в цілому.
- Таблицю можна оновлювати або видаляти, тоді як перегляди цього робити не можуть.
Q # 31) Що мається на увазі під ситуацією тупикової ситуації?
Відповідь: Тупикова ситуація - це ситуація, коли два або більше користувачів одночасно чекають даних, які блокуються один одним. Отже, це призводить до всіх заблокованих сеансів користувача.
Q # 32) Що означає індекс?
Відповідь: Індекс - це об’єкт схеми, який створюється для ефективного пошуку даних у таблиці. Індекси зазвичай створюються в певних стовпцях таблиці, до яких звертаються найбільше. Індекси можуть бути кластеризованими або некластеризованими.
Q # 33) Що таке РОЛЬ у базі даних Oracle?
Відповідь: Надання доступу до окремих об’єктів окремим користувачам є складним адміністративним завданням. Для полегшення цієї роботи в базі даних створюється група загальних привілеїв, яка називається РОЛЬ. РОЛЬ, щойно створена, може бути призначена або скасована у користувачів за допомогою команди GRANT & REVOKE.
Синтаксис:
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;
Q # 34) Які атрибути містяться в КУРСОРІ?
Відповідь: КУРСОР має різні атрибути, як зазначено нижче:
(я знайшов :
- Повертає INVALID_CURSOR, якщо курсор оголошено, але закрито.
- Повертає NULL, якщо отримання не відбулося, але курсор відкритий.
- Повертає TRUE, якщо рядки отримано успішно, і FALSE, якщо не повернуто рядків.
(іі) НЕ ЗНАЙДЕНО :
- Повертає INVALID_CURSOR, якщо курсор оголошено, але закрито.
- Повертає NULL, якщо отримання не відбулося, але курсор відкритий.
- Повертає FALSE, якщо рядки отримано успішно, і TRUE, якщо не повернуто рядків
(iii)% ІЗОПЕН : Повертає TRUE, якщо курсор ВІДКРИТО інакше FALSE
(iv)% ROWCOUNT : Повертає кількість отриманих рядків.
Q # 35) Чому ми використовуємо% ROWTYPE &% TYPE в PLSQL?
Відповідь: % ROWTYPE &% TYPE - це атрибути PL / SQL, які можуть успадкувати типи даних таблиці, визначені в базі даних. Метою використання цих атрибутів є забезпечення незалежності та цілісності даних.
Якщо будь-який з типів даних або точності змінюється в базі даних, код PL / SQL оновлюється автоматично із зміненим типом даних.
% TYPE використовується для оголошення змінної, яка повинна мати той самий тип даних, що і стовпець таблиці.
Тоді як% ROWTYPE буде використовуватися для визначення повного рядка записів, що мають структуру, подібну до структури таблиці.
Q # 36) Чому ми створюємо збережені процедури та функції в PL / SQL і чим вони відрізняються?
Відповідь: Зберігається процедура - це набір операторів SQL, які написані для виконання певного завдання. Ці оператори можна зберігати як групу в базі даних із присвоєним ім'ям і спільно використовувати їх із різними програмами, якщо є дозволи на доступ до них.
Функції - це знову ж підпрограми, які написані для виконання конкретних завдань, але між ними є відмінності.
Зберігаються процедури | Функції |
---|---|
Збережені процедури можуть повертати або не повертати значення, а також можуть повертати кілька значень. | Функція завжди повертає лише одне значення. |
Збережені процедури можуть включати оператори DML, такі як вставлення, оновлення та видалення. | Ми не можемо використовувати оператори DML у функції. |
Збережені процедури можуть викликати функції. | Функції не можуть викликати збережені процедури. |
Збережені процедури підтримують обробку винятків за допомогою блоку Try / Catch. | Функції не підтримують блоку Try / Catch. |
Q # 37) Які параметри ми можемо пройти через збережену процедуру?
Відповідь: Ми можемо передавати параметри IN, OUT & INOUT через збережену процедуру, і вони повинні бути визначені при оголошенні самої процедури.
Q # 38) Що таке тригер та які його типи?
Відповідь: Тригер - це збережена програма, яка записана таким чином, що вона виконується автоматично, коли відбувається якась подія. Ця подія може бути будь-яким DML або операцією DDL.
PL / SQL підтримує два типи тригерів:
- Рядок рівня
- Рівень заяви
Q # 39) Як ви будете розрізняти глобальну змінну з локальною змінною в PL / SQL?
Відповідь: Глобальна змінна - це та, яка визначається на початку програми і зберігається до кінця. До нього можна отримати доступ будь-якими методами або процедурами в програмі, тоді як доступ до локальної змінної обмежений процедурою або методом, де вона оголошена.
Q # 40) Які пакети є в PL SQL?
Відповідь: Пакет - це група пов’язаних об’єктів бази даних, таких як збережені процеси, функції, типи, тригери, курсори тощо, які зберігаються в базі даних Oracle. Це своєрідна бібліотека пов’язаних об’єктів, до якої, якщо це дозволено, можуть отримати доступ різні програми.
Структура пакета PL / SQL складається з 2 частин: специфікація пакета та тіло пакета.
Висновок
Сподіваюся, вищевказаний набір питань допоміг би вам зрозуміти, що таке Oracle.
Навіть якщо ви глибоко знаєте всі основні поняття, спосіб, яким ви це подаєте на співбесіді, має велике значення. Тому зберігайте спокій і впевнено дивіться на співбесіду, не вагаючись.
Прочитайте НАСТУПНУ Частину 2: Запитання щодо Oracle DBA, RAC та налаштування продуктивності
Бажаємо вам усіх успіхів !!
Рекомендована література
- Запитання та відповіді на інтерв’ю
- Найпопулярніші технічні запитання щодо програм Oracle та запитання щодо інтерв’ю щодо Oracle SOA
- Найпопулярніші запитання для інтерв’ю щодо форм та звітів Oracle
- Деякі цікаві питання для тестування програмного забезпечення
- 30 найважливіших запитань та відповідей на інтерв’ю PL / SQL у 2021 році
- Найпопулярніші запитання щодо інтерв’ю щодо Oracle DBA, RAC та налаштування продуктивності
- Найпопулярніші 90 запитань та відповідей на інтерв’ю SQL (ОСТАННІ)
- 20 простих запитань для перевірки програмного забезпечення для перевірки базових знань (Інтернет-вікторина)