Учебники

Создание других объектов схемы Вопросы

1. Какой объект базы данных среди перечисленных ниже обеспечивает уровень абстракции между пользователями и данными?

  1. Таблица
  2. Ряды
  3. Просмотры
  4. Синонимы

Ответ: C, D. Представления и синонимы не хранят данные сами. Представление — это временная или виртуальная таблица, используемая для извлечения данных, хранящихся в базовых таблицах базы данных.

2. Какие из следующих объектов базы данных могут генерировать серийные номера?

  1. Синонимы
  2. Просмотры
  3. таблицы
  4. Последовательности

Ответ: D. Последовательность может быть создана для генерации серии целых чисел. Значения, сгенерированные последовательностью, могут быть сохранены в любой таблице. Последовательность создается с помощью команды CREATE SEQUENCE.

3. Что правда о взглядах?

  1. Они равны таблицам
  2. Они хранят данные из одной или нескольких таблиц
  3. Мы можем выполнить SELECT и другие DML на простых представлениях
  4. Представления имеют то же пространство имен, что и таблицы, и, следовательно, таблица и представление не могут иметь одно и то же имя.

Ответ: C, D. Операции DML не допускаются в представлениях, которые включают групповые функции, предложение GROUP BY, псевдостолбец ROWNUM или ключевое слово DISTINCT.

4. Почему мнения полезны? (Выберите наиболее подходящий ответ)

  1. Потому что они имеют более короткие имена, чем таблицы
  2. Запретить пользователям доступ к столбцам таблиц
  3. Упростить пользовательский SQL
  4. Все вышеперечисленное

Ответ: B, C. Представление — это временная или виртуальная таблица, используемая для извлечения данных, хранящихся в базовых таблицах базы данных. Запрос представления должен выполняться каждый раз, когда представление используется. Представление может использоваться для упрощения запросов или ограничения доступа к конфиденциальным данным.

5. В каком из приведенных ниже сценариев операции DML над представлением невозможны?

  1. Представление содержит предложение GROUP BY
  2. Базовые таблицы содержат столбцы NOT NULL, но не выбраны в запросе представления
  3. Просмотр запроса использует псевдостолбец ROWNUM
  4. Все вышеперечисленное

Ответ: D. Операции DML не допускаются в представлениях, которые включают групповые функции, предложение GROUP BY, псевдостолбец ROWNUM или ключевое слово DISTINCT.

6. Откуда представления могут получать свои данные?

  1. Таблицы из той же схемы
  2. Таблицы из разных схем
  3. Оба а и Б
  4. Ни один из вышеперечисленных

Ответ: C.

Рассмотрите данную структуру таблицы и следующее утверждение и ответьте на следующие вопросы с 7 по 9:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE VIEW emp_details AS
SELECT hire_date, job, salary, department_id FROM employees; 

7. Вы выполняете запрос ниже. Сколько столбцов увидит пользователь в результате запроса ниже?

SELECT * FROM emp_details WHERE department_id= 100;
  1. 0
  2. 1
  3. 2
  4. 4

Ответ: D. Поскольку определение представления основано на четырех столбцах таблицы EMPLOYEES, запрос для представления со всеми столбцами покажет только эти четыре столбца.

8. Вам необходимо получить название отдела в дополнение к вышеприведенным 4 столбцам. Какой из следующих запросов даст вам требуемые результаты?

  1. SELECT E.*, dept_name
    FROM departments D join emp_details E
    ON (E.department_id= D.dept_id);
  2. SELECT hire_date, job, salary, dept_name FROM emp_details
  3. Это невозможно, представление не может быть объединено с другими таблицами.
  4. Ни один из вышеперечисленных

Ответ: A. Представление может быть объединено с другими таблицами или представлениями в запросе SELECT.

9. Вам нужно найти максимальную зарплату вместе с названием отдела в дополнение к 4 столбцам, выбранным в представлении. Какой из следующих запросов даст вам требуемые результаты?

  1. Select dept_name, e.salary
    FROM departments D join emp_details E
    On (E.department_id= D.dept_id);
  2. Select dept_name, max(salary)
    FROM departments D join emp_details E
    On (E.department_id= D.dept_id)
    Group by dept_name;
  3. Представление не может появляться в запросах с использованием групповых функций
  4. Select dept_name, max(salary)
    FROM departments D join emp_details E
    On (E.department_id= D.dept_id);

Ответ: Б.

10. Что из перечисленного относится к синонимам?

  1. ПУБЛИЧНЫЕ и ЧАСТНЫЕ синонимы могут иметь одинаковое имя для одной и той же таблицы.
  2. DROP SYNONYM удалит синоним
  3. DROP PUBLIC SYNONYM может выполняться только SYSDBA
  4. Ни один из вышеперечисленных

Ответ: A, C. Синоним может быть частным синонимом, который пользователи используют для ссылки на принадлежащие им объекты, или общедоступным синонимом, который пользователи используют для доступа к объектам базы данных другого пользователя. Только SYSDBA или пользователь с привилегиями DBA могут создавать общедоступный синоним.

11. Что верно в создании представления? (Выберите наиболее подходящий ответ)

  1. Представление может быть создано только из таблицы
  2. Представление может быть создано только из одной таблицы
  3. Представление может быть создано из одной или нескольких таблиц или представлений
  4. Ни один из вышеперечисленных

Ответ: C. Представление, содержащее выражения или функции или объединяющее несколько таблиц, считается сложным представлением. Комплексное представление может использоваться для обновления только одной таблицы.

12. Какие из следующих привилегий необходимы для создания представлений в собственной схеме?

  1. CREATE TABLE системная привилегия
  2. CREATE VIEW системная привилегия
  3. Системная привилегия ALTER VIEW
  4. CREATE ANY VIEW системная привилегия

Ответ: B. Привилегия CREATE VIEW требуется пользователю для создания представления в его собственной схеме.

13. Какие из следующих привилегий требуются для создания представлений в чужой схеме?

  1. СОЗДАТЬ ЛЮБОЙ ВИД
  2. СОЗДАТЬ ВИД
  3. Оба а и Б
  4. Ни один из вышеперечисленных

Ответ: A. Пользователь должен создать привилегию CREATE ANY VIEW, чтобы создать представление в схеме другого пользователя.

14. Что из перечисленного поддерживается для представления объекта или реляционного представления?

  1. LOBs
  2. Типы объектов
  3. Типы данных REF
  4. Все вышеперечисленное

Ответ: Д.

15. Что из перечисленного являются различными типами представлений?

  1. Простые виды
  2. Комплексные виды
  3. Оба а и Б
  4. Ни один из вышеперечисленных

Ответ: C. Простые и сложные представления — это два типа представлений. Простые представления основаны на подзапросе, который ссылается только на одну таблицу и не включает групповые функции, выражения или предложения GROUP BY. Сложные представления основаны на подзапросе, который извлекает или извлекает данные из одной или нескольких таблиц и может содержать функции или сгруппированные данные.

16. Что правда в простом представлении?

  1. DML операторы могут быть выданы в большинстве случаев против простых представлений
  2. Существует только одна исходная базовая таблица
  3. Групповые функции не используются
  4. Все вышеперечисленное

Ответ: D. Простые представления основаны на подзапросе, который ссылается только на одну таблицу и не включает групповые функции, выражения или предложения GROUP BY.

17.Что касается сложного взгляда?

  1. Выражения DML нельзя выдавать против сложных представлений
  2. Содержат несколько базовых таблиц
  3. Агрегации не могут быть выполнены
  4. Все вышеперечисленное

Ответ: D. Сложные представления основаны на подзапросе, который извлекает или извлекает данные из одной или нескольких таблиц и может содержать функции или сгруппированные данные.

18. Какую комбинацию ключевых слов следует использовать для неявного удаления представления (если оно существует) и создания нового представления с тем же именем?

  1. СОЗДАТЬ ВИД
  2. ЗАМЕНИТЬ ВИД
  3. СОЗДАТЬ ИЛИ ЗАМЕНИТЬ ВИД
  4. Ни один из вышеперечисленных

Ответ: C. Опция OR REPLACE уведомляет Oracle 11g о том, что представление с таким именем может уже существовать; если это так, предыдущая версия представления должна быть заменена на версию, определенную в новой команде.

19. Как представление хранится в словаре данных?

  1. В качестве предложения WHERE
  2. Как заявление CREATE
  3. Как ОБНОВЛЕНИЕ заявления
  4. Как утверждение SELECT

Ответ: Д.

20. Что из нижеперечисленного может содержать однорядные функции?

  1. Встроенные представления
  2. Простые представления
  3. Комплексные виды
  4. Композитные виды

Ответ: A, B. Однорядные функции могут использоваться как во встроенных, так и в простых представлениях.

21.Кто из следующего может содержать группу данных?

  1. Композитный вид
  2. Простой вид
  3. Комплексный вид
  4. Ни один из вышеперечисленных

Ответ: C. Комплексное представление может использовать групповую функцию в запросе.

22.Что из следующего верно о View?

  1. Подзапросы могут быть встроены в оператор CREATE VIEW
  2. Подзапрос, используемый в операторе CREATE VIEW, должен иметь простой синтаксис SELECT
  3. Вы не можете использовать предложение WHERE в подзапросе, когда оно используется в операторе CREATE VIEW.
  4. Ни один из вышеперечисленных

Ответ: A. Определение представления может использовать подзапросы.

23.Какое из следующего может создать представление, даже если базовые таблицы не существуют?

  1. NOFORCE
  2. FORCE
  3. ИЛИ ЗАМЕНИТЬ
  4. СОЗДАТЬ ВИД

Ответ: B. Если вы включите ключевое слово FORCE в предложение CREATE, Oracle 11g создает представление, несмотря на отсутствие каких-либо ссылочных таблиц. NOFORCE — это режим по умолчанию для команды CREATE VIEW, что означает, что все таблицы и столбцы должны быть действительными, иначе представление не будет создано.

24. Какая из следующих команд гарантирует, что никакие операции DML не могут быть выполнены с представлением?

  1. NOFORCE
  2. FORCE
  3. ТОЛЬКО ЧИТАЙТЕ
  4. ИЛИ ЗАМЕНИТЬ

Ответ: C. Опция WITH READ ONLY предотвращает выполнение любых операций DML с представлением. Этот параметр часто используется, когда важно, чтобы пользователи могли только запрашивать данные, а не вносить в них изменения.

25.Что верно в отношении опции NOFORCE в операторе CREATE VIEW?

  1. Он создает представление, даже если базовая таблица (таблицы) не существует.
  2. Он создает представление, только если существуют базовые таблицы.
  3. Это значение по умолчанию при создании представления.
  4. Ни один из вышеперечисленных

Ответ: B, C. NOFORCE — это режим по умолчанию для команды CREATE VIEW, что означает, что все таблицы и столбцы должны быть действительными, иначе представление не будет создано.

26.Что верно в отношении ключевого слова OR REPLACE?

  1. Привилегии объекта теряются при создании представления с использованием этого ключевого слова.
  2. Нет необходимости повторно предоставлять объектные привилегии, ранее предоставленные для него
  3. Ни из А, ни из В
  4. Ни один из вышеперечисленных

Ответ: B. Параметр OR REPLACE уведомляет Oracle 11g о том, что представление с таким именем может уже существовать; если это так, предыдущая версия представления должна быть заменена на версию, определенную в новой команде.

27.Что верно в отношении доступа к представлению ниже? (Предположим, что структура таблицы дана)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE VIEW salVU100
AS SELECT employee_id  ID_NUMBER, last_name NAME, salary*12 ANNUAL_SAL
FROM employees E 
WHERE department_id= 100; 
  1. К представлению должны обращаться исходные имена столбцов, определенные в базовой таблице.
  2. Представление должно быть доступно по псевдонимам, указанным в запросе представления.
  3. Вид это простой вид
  4. Ни один из вышеперечисленных

Ответ: B, C. Представление должно ссылаться на псевдоним столбца, если определение представления содержит псевдоним для столбцов.

28.Что верно в отношении доступа к представлению ниже? (Предположим, что структура таблицы дана)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE VIEW salVU100 (ID_NUMBER, NAME, ANNUAL_SAL)
AS SELECT employee_id , last_name, salary*12 
FROM employees E 
WHERE department_id= 100; 
  1. Не обязательно, чтобы количество псевдонимов соответствовало номеру. выражений в подзапросе
  2. Обязательно, что нет. перечисленные псевдонимы должны соответствовать номеру выражений, выбранных в подзапросе
  3. При создании представления обязательно указывать псевдонимы.
  4. Ни один из вышеперечисленных

Ответ: B. Если псевдоним указан в заголовке представления, то в запросе SELECT должно быть выбрано такое же количество столбцов.

29. Рассмотрим следующее утверждение и данную структуру таблицы:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
CREATE OR REPLACE VIEW empVU100
(ID_NUMBER, NAME, ANNUAL_SAL, DEPT_ID)
AS 
SELECT employee_id , first_name ||' '|| last_name, salary, department_id
FROM employees
WHERE department_id= 100; 

Что верно в отношении псевдонимов столбцов, как в приведенном выше запросе?

  1. Псевдонимы столбцов перечислены в случайном порядке как столбцы в подзапросе
  2. Псевдонимы столбцов перечислены в том же порядке, что и столбцы в подзапросе.
  3. Псевдонимы столбцов обязательны при использовании ключевого слова CREATE OR REPLACE
  4. Мы не можем использовать сцепление, когда мы используем CREATE OR REPLACE

Ответ: Б.

Рассмотрите следующее утверждение и ответьте на вопросы с 30 по 34, которые следуют:

CREATE OR REPLACE VIEW dept_sum_vu (name, minsal, maxsal, avgsal) 
AS 
SELECT d.dept_name, MIN(e.salary), MAX(e.salary), AVG (e.salary)
FROM employees e JOIN departments d 
ON (e.department_id= d.dept_id)
GROUP BY d.dept_name; 

30. Что можно сказать о приведенном выше утверждении?

  1. Альтернативные имена были даны для представления
  2. Предоставление альтернативных имен обязательно, если любой столбец является производным от функции или выражения
  3. Оба а и Б
  4. Ни один из вышеперечисленных

Ответ: C. Указание псевдонима — хорошая практика для улучшения читабельности кода и просмотра запросов.

31. Что произойдет, если вышеуказанное утверждение будет изменено, как показано ниже?

CREATE OR REPLACE VIEW dept_sum_vu(name, maxsal, minsal, avgsal)
AS 
SELECT d.dept_name, MIN(e.salary), MAX(e.salary), AVG (e.salary)
FROM employees e JOIN departments d 
ON (e.department_id= d.dept_id)
GROUP BY d.dept_name; 
  1. Это не будет отличаться от оригинального утверждения
  2. Он будет успешно выполнен с тем же результатом, но с изменением псевдонимов.
  3. Это выдаст ошибку ORA
  4. Ни один из вышеперечисленных

Ответ: B. Последовательность псевдонимов столбцов не имеет большого значения, поскольку они не несут никаких поведенческих атрибутов.

32. Определите вывод приведенного ниже оператора DELETE.

DELETE FROM dept_sum_vu; 
  1. Это удалит вид
  2. Это удалит все строки из представления, но структура представления останется прежней
  3. Это выдаст ошибку ORA
  4. Ни один из вышеперечисленных

Ответ: C. Представление DEPT_SUM_VU является сложным представлением. Операции DML нельзя выполнять в сложном представлении.

33. Предположим, вы изменили приведенный выше запрос следующим образом:

CREATE OR REPLACE VIEW dept_sum_vu(name, sal) 
AS 
SELECT d.dept_name, e.salary 
FROM employees e JOIN departments d 
ON (e.department_id= d.dept_id)
Where rownum < 10; 

Какое влияние окажет модификация?

  1. Представление может быть обновлено для обновления значений в таблицах EMPLOYEES и DEPARTMENTS
  2. Данные в таблицах СОТРУДНИКИ и ОТДЕЛЫ нельзя удалить через представление
  3. Данные в таблицах СОТРУДНИКИ и ОТДЕЛЫ могут быть вставлены через представление
  4. Столбец может быть добавлен в таблицу EMPLOYEES через представление

Ответ: B. Операции DML нельзя выполнять в сложных представлениях. DEPT_SUM_VU — сложное представление, поскольку оно объединяет несколько таблиц. Операции DDL невозможны для представлений.

34. Предположим, вы выбрали отделы DISTINCT и зарплаты сотрудников в запросе представления, использованном в предыдущем вопросе. Каков будет результат, если вы попытаетесь удалить строки из представления dept_sum_vu?

  1. Строки будут удалены без ошибок
  2. Только первые 10 строк будут удалены
  3. Строки не могут быть удалены.
  4. Ни один из вышеперечисленных

Ответ: C. Представление DEPT_SUM_VU по-прежнему является сложным представлением, поскольку оно использует ключевое слово DISTINCT. Следовательно, операции DML на нем невозможны.

35. Когда можно удалить строки из вида?

  1. Удаление строк через представление невозможно
  2. Это должен быть простой вид
  3. Это должно быть комплексное представление
  4. Ни один из вышеперечисленных

Ответ: B. Операции DML возможны только на простых представлениях.

36. Когда данные в представлении не могут быть изменены?

  1. Когда есть групповые выражения
  2. Когда есть предложение GROUP BY
  3. Когда ROWNUM используется в запросе представления
  4. Все вышеперечисленное

Ответ: D. ОБНОВЛЕНИЕ невозможно в представлении, содержащем групповые функции, псевдостолбцы или ключевое слово DISTINCT.

37. Таблица JOB_HISTORY принадлежит пользователю «Andy». Энди предоставляет привилегию SELECT для таблицы JOB_HISTORY другому пользователю «HR». Какой оператор создаст синоним EMP_JOBS, чтобы «HR» мог успешно выполнить следующий запрос? (Предположим, что структура таблиц дана)

SQL> desc job_history
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 START_DATE		 NOT NULL DATE
 END_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 DEPARTMENT_ID			  NUMBER(4)
SELECT * from EMP_JOBS; 
  1. Энди выпускает —
    CREATE SYNONYM EMP_JOBS for JOB_HISTORY
  2. Кадровые вопросы —
    CREATE SYNONYM EMP_JOBS for andy.JOB_HISTORY
  3. Кадровые вопросы —
    CREATE PUBLIC SYNONYM EMP_JOBS FOR andy.JOB_HISTORY
  4. Ни один из вышеперечисленных

Ответ: B. Только SYSDBA или пользователь с привилегиями DBA могут создавать общедоступные синонимы.

38. Какое ключевое слово может гарантировать, что операции DML, выполняемые с представлением, остаются в домене представления?

  1. ИЛИ ЗАМЕНИТЬ
  2. СОЗДАЙТЕ
  3. С опцией проверки
  4. Ни один из вышеперечисленных

Ответ: C. Ограничение WITH CHECK OPTION гарантирует, что любые операции DML, выполняемые с представлением (например, добавление строк или изменение данных), не препятствуют доступу представления к строке, поскольку оно больше не соответствует условию в предложении WHERE.

Рассмотрим следующую структуру таблицы и данное утверждение и ответьте на следующие вопросы 39 и 40:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE OR REPLACE VIEW empvu100
AS 
SELECT * FROM employees 
WHERE department_id= 100
WITH CHECK OPTION CONSTRAINT empvu100_ck; 

39.Что будет делать вышеприведенное утверждение?

  1. Это позволит пользователям выполнять INSERT или UPDATE во всех отделах.
  2. Это позволит пользователю выполнить INSERT или UPDATE для любой строки, в которой есть отдел 100
  3. Пользователь может ОБНОВИТЬ любую строку в таблице сотрудников
  4. Пользователь может вставлять строки без каких-либо ограничений в таблице сотрудников

Ответ: B. Ограничение WITH CHECK OPTION гарантирует, что любые операции DML, выполняемые с представлением (например, добавление строк или изменение данных), не препятствуют доступу представления к строке, поскольку оно больше не соответствует условию в предложении WHERE. Ошибка ORA будет выдана, если INSERT или UPDATE будут выполнены в любой строке с значением Department_id, отличным от 100.

40. Предположим, вы запускаете инструкцию UPDATE, как показано ниже:

UPDATE empvu100
Set department_id = 200
Where employee_id  = 121; 

Каков будет результат этого заявления?

  1. Строки не обновляются
  2. Ошибка ORA выброшена
  3. Оба а и Б
  4. Ни один из вышеперечисленных

Ответ: C. Если представление с CHECK OPTION обновлено и значение новой записи нарушает область представления, возникает исключение ORA «ORA-01402: представление WITH CHECK OPTION, где нарушение условия предложения».

41.Что верно в отношении ограничения ограничения?

  1. INSERT или UPDATE, выполняемые через представление, не могут создавать строки, которые представление не может выбрать
  2. Только вставки, выполняемые через представление, не могут создавать строки, которые представление не может выбрать
  3. Только ОБНОВЛЕНИЯ, выполненные через представление, не могут создавать строки, которые представление не может выбрать
  4. Ни один из вышеперечисленных

Ответ: А.

42. Как вы можете предотвратить операции DML в View?

  1. Определяя ограничение WITH CHECK OPTION
  2. Определяя опцию WITH READ ONLY
  3. Ни из А, ни из В
  4. Ни один из вышеперечисленных

Ответ: B. Опция WITH READ ONLY предотвращает выполнение любых операций DML с представлением. Этот параметр часто используется, когда важно, чтобы пользователи могли только запрашивать данные, а не вносить в них изменения.

Рассмотрите структуру таблицы и данное утверждение и ответьте на следующие вопросы 43, 44 и 45:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE OR REPLACE empvu100(employee_id , first_name, job)
AS 
SELECT employee_id , last_name, job
FROM employees
WHERE department_id = 100
WITH READ ONLY; 

43.Что верно в отношении вышеприведенного утверждения?

  1. Представление не будет создано
  2. Операция INSERT в этом представлении выдает ошибку ORA
  3. При обновлении строк для всех сотрудников в отделе 100 будет выдана ошибка ORA
  4. Ни один из вышеперечисленных

Ответ: B, C. Операции DML не разрешены для представления, созданного с помощью опции READ ONLY.

44. Сколько строк можно удалить из представления, как показано выше?

  1. Все строки вида
  2. Все ряды только отдела 100
  3. Нет строк
  4. Ни один из вышеперечисленных

Ответ: C. Операции DML не разрешены в представлении, которые созданы с опцией READ ONLY.

45. Какое из следующих утверждений отбросит представление, созданное, как указано выше?

  1. DROP READ ONLY VIEW empvu100;
  2. DROP NOFORCE empvu100;
  3. DROP VIEW empvu100;
  4. Ни один из вышеперечисленных

Ответ: C. Представление только для чтения можно отбросить с помощью команды DROP VIEW.

46.Что правда об отбрасывании View?

  1. Столбцы в представлении из базовых таблиц также удаляются
  2. Определение представления удалено из базы данных.
  3. Отбрасывание представления не влияет на базовую базовую таблицу
  4. Ни один из вышеперечисленных

Ответ: B, C.

47. Какие из следующих привилегий пользователь должен отказаться от просмотра?

  1. СОЗДАТЬ ЛЮБОЙ ВИД
  2. СОЗДАТЬ ВИД
  3. ОТПРАВИТЬ ЛЮБОЙ ВИД
  4. DROP VIEW

Ответ: C.

48.Что касается последовательностей?

  1. Генерирует целые числа
  2. Это общий объект
  3. Может использоваться для создания значения PRIMARY KEY
  4. Все вышеперечисленное

Ответ: D. Последовательность повышает эффективность доступа к значениям последовательности при кэшировании в памяти.

49.Что верно в отношении последовательности?

  1. Он создается при установке базы данных Oracle
  2. Он создан пользователем, который имеет системную привилегию CREATE SEQUENCE
  3. Это не может быть разделено более чем двумя пользователями
  4. Он сбрасывается автоматически при отключении базы данных.

Ответ: B, C. Пользователь должен создать системную привилегию CREATE SEQUENCE, чтобы создать последовательность в своей собственной схеме, которая не может использоваться другими пользователями.

50. Что из перечисленных ниже вариантов относится к последовательностям?

  1. Целые числа, сгенерированные с помощью последовательности для одной таблицы, не могут использоваться другими таблицами
  2. Последовательность может быть только увеличена
  3. Последовательность становится недействительной, если другая последовательность генерирует те же самые целые числа
  4. Последовательность может использоваться многими таблицами, и они могут быть увеличены или уменьшены

Ответ: Д.

Рассмотрите следующее утверждение и ответьте на следующие вопросы с 51 по 59:

CREATE SEQUENCE dept_deptid_seq
INCREMENT BY 100
START WITH 101
MAXVALUE 9999
NOCACHE
NOCYCLE;

51. Что будет первым значением, сгенерированным этой последовательностью?

  1. 1
  2. 100
  3. 101
  4. 9999

Ответ: C. Предложение START WITH устанавливает начальное значение для последовательности. Oracle 11g начинает каждую последовательность с 1, если в предложении START WITH не указано другое значение.

52. Что может быть последним значением, сгенерированным этой последовательностью?

  1. 0
  2. 100
  3. 101
  4. 9999

Ответ: D. Предложения MINVALUE и MAXVALUE устанавливают минимальное или максимальное значение для последовательности.

53. Какое будет второе значение, сгенерированное этой последовательностью?

  1. 102
  2. 100
  3. 99
  4. 9999

Ответ: A. Предложение INCREMENT BY указывает интервал между двумя последовательными значениями. Если последовательность увеличивается на положительное значение, значения, генерируемые последовательностью, располагаются в порядке возрастания. Однако, если указано отрицательное значение, значения, генерируемые последовательностью, располагаются в порядке убывания. Если предложение INCREMENT BY не включено при создании последовательности, используется настройка по умолчанию, которая увеличивает последовательность на единицу для каждого сгенерированного целого числа.

54. Какое будет следующее значение после того, как максимальное число 9999 будет достигнуто этой последовательностью?

  1. 101
  2. Неважно
  3. Это выдаст ошибку ORA
  4. Ни один из вышеперечисленных

Ответ: B. Параметры CYCLE и NOCYCLE определяют, должен ли Oracle 11g начинать переиздание значений из последовательности после достижения минимального или максимального значения.

55. Сколько значений Oracle предварительно выделит в памяти на основе последовательности, приведенной выше?

  1. 20
  2. 0
  3. 100
  4. 9999

Ответ: А.

56.Вы выполняете следующий запрос:

SELECT dept_depid_seq.NEXTVAL from dual; 

Предполагая, что последним значением сгенерированной последовательности было 200, каков будет результат этого запроса?

  1. 200
  2. 101
  3. 9999
  4. 201

Ответ: D. Псевдостолбец NEXTVAL сгенерирует следующее уникальное целое число последовательности.

57.Вы выполняете следующий запрос:

SELECT dept_depid_seq.CURRVAL from dual; 

Предполагая, что последним значением сгенерированной последовательности было 200, каков будет результат этого запроса?

  1. 200
  2. 101
  3. 9999
  4. 201

Ответ: A. Псевдостолбец CURRVAL сгенерирует текущее уникальное целое число, уже сгенерированное последовательностью.

58. Предположим, вам нужно изменить начальное значение этой последовательности на 1000. Какие из следующих утверждений помогут?

  1. ALTER dept_deptid_seq
    INCREMENT BY 100
    START WITH 1000
    MAXVALUE 9999
    NOCACHE
    NOCYCLE; 
  2. Последовательность должна быть отброшена и создана заново, чтобы начать последовательность с 1000.
  3. ALTER SEQUENCE dept_deptid_seq
    START WITH 101
  4. ALTER SEQUENCE dept_deptid_seq
    INCREMENT BY 100
    START WITH 101
    CYCLE;

Ответ: B. Стартовый номер последовательности не может быть изменен. Oracle вызывает исключение «ORA-02283: невозможно изменить начальный порядковый номер».

59. Предположим, что приведенная выше последовательность изменена, как показано ниже:

ALTER SEQUENCE dept_deptid_seq
INCREMENT BY 100
START WITH 101
MAXVALUE 99
NOCACHE
NOCYCLE; 

Каков будет результат этого изменения?

  1. Ошибка ORA
  2. Максимальное значение для измененной последовательности теперь будет 99
  3. Ни из А, ни из В
  4. Ни один из вышеперечисленных

Ответ: A. Значение MAXVALUE не может быть меньше значения START WITH при изменении последовательности.

60. Когда мы можем использовать опцию CYCLE в последовательностях?

  1. Если мы хотим очистить старые строки быстрее
  2. Если мы не хотим использовать последовательность для генерации значений PRIMARY KEY
  3. Оба а и Б
  4. Ни один из вышеперечисленных

Ответ: C. Параметры CYCLE и NOCYCLE определяют, должен ли Oracle 11g начинать переиздание значений из последовательности после достижения минимального или максимального значения. Если указана опция CYCLE, а Oracle 11g достигает максимального значения для восходящей последовательности или минимального значения для нисходящей последовательности, опция CYCLE снова запускает цикл чисел.

61.Что верно в отношении псевдо колонки NEXTVAL?

  1. Он заново генерирует КРУПНУЮ последовательность
  2. Возвращает следующее доступное значение последовательности
  3. Может возвращать повторяющиеся значения
  4. Он генерирует одинаковые значения для разных пользователей

Ответ: B. Псевдостолбец NEXTVAL (NEXT VALUE) используется для фактического генерирования значения последовательности. Другими словами, он вызывает объект последовательности и запрашивает значение следующего числа в последовательности. После того как значение сгенерировано, оно сохраняется в псевдостолбце CURRVAL (CURRENT VALUE), чтобы вы могли ссылаться на него снова.

62.Что верно для псевдостолбца CURRVAL?

  1. CURRVAL может использоваться перед NEXTVAL относительно последовательности
  2. CURRVAL дает текущее значение последовательности
  3. CURRVAL может давать повторяющиеся значения
  4. Ни один из вышеперечисленных

Ответ: Б.

63.Когда можно использовать NEXTVAL и CURRVAL?

  1. Предложение SET оператора INSERT
  2. VALUES предложение оператора UPDATE
  3. Список SELECT оператора SELECT, который не является частью подзапроса
  4. Список SELECT оператора INSERT

Ответ: C, D. Последовательность может использоваться в запросе SELECT, курсоре PL / SQL или в прямых операциях IAS (INSERT-AS-SELECT).

64.Когда нельзя использовать NEXTVAL и CURRVAL?

  1. ВЫБЕРИТЕ список вида
  2. Оператор SELECT с ключевым словом DISTINCT
  3. Подзапрос в операторе SELECT, DELETE или UPDATE
  4. Все вышеперечисленное

Ответ: Д.

Рассмотрите данное утверждение и ответьте на следующие вопросы 65 и 66:

CREATE TABLE employees 
(employee_id  NUMBER(4) DEFAULT emp_empid_seq.CURRVAL,
 department_id NUMBER(4)); 

65. Каков будет результат этого заявления? (Предположим, что emp_empid_seq — это последовательность, используемая для генерации значений идентификатора сотрудника).

  1. Таблица будет создана
  2. Столбец отдела_ид будет иметь значения из последовательности, созданной для идентификатора сотрудника
  3. Столбец отдела_ид будет иметь значение ПО УМОЛЧАНИЮ
  4. Ошибка ORA

Ответ: D. Псевдоколонки не могут быть указаны в предложении DEFAULT определения столбца.

66. Каков будет результат этого заявления, если CURRVAL будет заменен на NEXTVAL? (Предположим, что emp_empid_seq генерируется для создания значений идентификатора сотрудника)

  1. Таблица будет создана
  2. Столбец отдела_ид будет иметь значения из последовательности, созданной для идентификатора сотрудника
  3. Столбец отдела_ид будет иметь значение ПО УМОЛЧАНИЮ
  4. Ошибка ORA

Ответ: D. Псевдоколонки не могут быть указаны в предложении DEFAULT определения столбца.

Изучите данный экспонат, предоставив структуры таблиц Отделы и Местоположение. Ответьте на следующие вопросы 67 и 68:

SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
SQL> desc locations
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 LOCATION_ID		 NOT NULL NUMBER(4)
 STREET_ADDRESS 		  VARCHAR2(40)
 POSTAL_CODE			  VARCHAR2(12)
 CITY			 NOT NULL VARCHAR2(30)
 STATE_PROVINCE 		  VARCHAR2(25)
 COUNTRY_ID			  CHAR(2)

67. Вам нужно вставить новый отдел с именем «HR» в ID местоположения 1000. Какое из следующих утверждений даст вам требуемые результаты?

  1. INSERT INTO departments (dept_id, dept_name, location_id)
    VALUES (dept_deptid_seq.NEXTVAL, 'HR', 1000); 
  2. INSERT INTO departments (dept_id, dept_name, location_id)
    VALUES (dept_deptid_seq.NEXTVAL, "HR", 1000); 
  3. INSERT INTO departments (dept_id, dept_name, location_id)
    VALUES (dept_deptid_seq.CURRVAL, 'HR', 1000); 
  4. Ни один из вышеперечисленных

Ответ: A. Опция C вызовет «Уникальное нарушение ограничения», поскольку она попытается вставить текущее значение идентификатора отдела, который уже существует в таблице DEPARTMENTS.

68. Предположим, что вы выполняете приведенный ниже запрос перед тем, как вставить значения, как показано в опции А в вопросе 67. Каков будет результат запроса?

SELECT dept_deptid_seq.CURRVAL FROM DUAL; 
  1. Ошибка ORA
  2. Это даст текущее значение последовательности
  3. Ни из А, ни из В
  4. Ни один из вышеперечисленных

Ответ: B. Когда пользователь входит в Oracle 11g, в псевдостолбце CURRVAL изначально значение не сохраняется; текущее значение NULL. После вызова NEXTVAL для генерирования значения последовательности CURRVAL сохраняет это значение до тех пор, пока не будет сгенерировано следующее значение. CURRVAL содержит только последнее сгенерированное значение.

69. Как могут возникать пробелы в значениях последовательности?

  1. Когда происходит откат
  2. Система падает
  3. Последовательность используется в другой таблице
  4. Все вышеперечисленное

Ответ: Д.

70.Что верно в отношении значений последовательности кэширования?

  1. Кэширование значений последовательности в Oracle невозможно
  2. Кеш заполняется при достижении максимального предела последовательности
  3. Кэширование начинается в первый раз, когда передается последовательность
  4. Ни один из вышеперечисленных

Ответ: C. Если опция NOCACHE указана при создании последовательности, каждое число генерируется при получении запроса. Однако, если транзакции организации требуют большого количества последовательных чисел в течение сеанса, можно использовать опцию CACHE, чтобы Oracle 11g заранее генерировал набор значений и сохранял их в памяти сервера. Затем, когда пользователь запрашивает значение последовательности, присваивается следующее доступное значение без необходимости в генерации числа Oracle 11g. С другой стороны, если опция CACHE не указана, Oracle 11g предполагает значение по умолчанию CACHE 20 и автоматически сохраняет 20 последовательных значений в памяти для доступа пользователей.

71. Следующий запрос для последовательности EMP_EMPID_SEQ выполняется после транзакции, в которую были вставлены пять сведений о сотруднике.

Select emp_empID_seq.CURRVAL from dual; 

Предположим, транзакция сотрудника откатилась. Каков будет результат вышеуказанного запроса?

  1. Значение последовательности в начале транзакции сотрудника
  2. НОЛЬ
  3. Значение последовательности в конце транзакции сотрудника
  4. Ни один из вышеперечисленных

Ответ: C. Значения последовательности не зависят от фиксации или отката. Если транзакция, использующая генератор последовательности, откатывается, значения последовательности теряются и не могут быть восстановлены.

72. Какие из следующих привилегий требуются для изменения последовательности?

  1. СОЗДАТЬ ИЛИ ЗАМЕНИТЬ привилегию
  2. Привилегия ALTER для последовательности
  3. Привилегия ALTER TABLE
  4. ОБНОВЛЕНИЕ привилегии

Ответ: B. Чтобы изменить последовательность, последовательность должна быть в вашей собственной схеме, или у вас должна быть привилегия объекта ALTER для последовательности, или у вас должна быть системная привилегия ALTER ANY SEQUENCE.

73.Что происходит, когда последовательность изменяется?

  1. Существующие целые числа, уже сгенерированные последовательностью, также изменены
  2. Только будущие целые числа затронуты
  3. Последовательность прекращает кэширование будущих целых
  4. Ни один из вышеперечисленных

Ответ: B. С помощью команды ALTER SEQUENCE любые изменения применяются только к значениям, сгенерированным после внесения изменений.

74. Предположим, вам нужно отбросить последовательность. Какая из следующих команд поможет?

  1. ALTER SEQUENCE sequence_name START WITH NULL;
  2. DROP sequence_name;
  3. DROP SEQUENCE sequence_name;
  4. Ни один из вышеперечисленных

Ответ: C. Команда DROP используется для удаления последовательности

75.Какая из следующих привилегий позволит вам отбросить последовательность? (Выберите наиболее подходящий ответ)

  1. ALTER SEQUENCE
  2. ALTER TABLE
  3. DROP SEQUENCE
  4. УБРАТЬ ЛЮБУЮ ПОСЛЕДОВАТЕЛЬНОСТЬ

Ответ: D. Чтобы удалить последовательность, она должна быть в вашей собственной схеме или у вас должна быть системная привилегия DROP ANY SEQUENCE.

76.Что правда об индексах?

  1. Индексы создаются только вручную
  2. Индексы создаются только автоматически
  3. Оба а и Б
  4. Ни один из вышеперечисленных

Ответ: D. Индексы могут быть созданы вручную, а также автоматически после определенных действий, таких как создание первичного ключа или ограничение unqiue.

77.Какое из следующих значений используется индексом для быстрого поиска данных?

  1. ROWNUM
  2. ROWID
  3. Последовательность
  4. Ни один из вышеперечисленных

Ответ: B. Индекс Oracle 11g — это объект базы данных, в котором хранится карта значений столбцов и ROWID соответствующих строк таблицы. ROWID — это физический адрес строки таблицы.

78. Что происходит, когда на столбце таблицы нет индекса?

  1. Данные расположены быстро
  2. Есть полное сканирование таблицы
  3. Таблица не может быть создана
  4. Таблица не может быть изменена

Ответ: Б.

79. Что из следующего верно об Индексе?

  1. Индекс уменьшает дисковый ввод-вывод
  2. Индекс находит данные быстро
  3. Индексы логически и физически не зависят от таблицы, которую они индексируют
  4. Все вышеперечисленное

Ответ: Д.

80. Что произойдет, если индекс будет удален?

  1. Столбец, по которому создается индекс, тоже удаляется
  2. Таблица, по которой создается индекс, тоже сбрасывается
  3. Созданные индексы не могут быть удалены
  4. Поскольку индексы являются логически и физически независимыми объектами, их можно отбрасывать, не затрагивая другие объекты.

Ответ: D. Индексы — это объекты, которые физически хранятся в схеме. Удаление индекса не влияет на другие объекты.

81. Что происходит, когда стол сбрасывается?

  1. Индексы все еще остаются, поскольку они являются логически и независимыми объектами.
  2. Индексы в таблице также удаляются
  3. Ни из А, ни из В
  4. Ни один из вышеперечисленных

Ответ: Б.

82.Как индексы создаются автоматически?

  1. Когда мы создаем таблицу
  2. Когда таблица изменена
  3. Когда ПЕРВИЧНЫЙ КЛЮЧ определен в столбце (или группе столбцов) таблицы
  4. Когда ограничение UNIQUE KEY определено в определении таблицы

Ответ: C, D.

83. Для какого из следующих объектов может быть создан синоним?

  1. Только таблицы и представления
  2. Таблица, вид и последовательность
  3. Хранимая процедура, функция или пакет
  4. Синоним

Ответ: B, C, D. Объект схемы, для которого вы создаете синоним, может быть следующих типов: таблица или таблица объектов, представление представления или объекта, последовательность, хранимая процедура, функция или пакет, материализованное представление, класс Java объект схемы, пользовательский тип объекта, синоним

84. Что из нижеперечисленного можно использовать для ссылки на таблицу, принадлежащую другому пользователю?

  1. ИНДЕКС
  2. ТАБЛИЦА
  3. СИНОНИМЫ
  4. ПОСЛЕДОВАТЕЛЬНОСТИ

Ответ: C. Синоним — это альтернативное имя или псевдоним для объекта базы данных.

85.Что из следующего является примером неуникального индекса?

  1. ОСНОВНОЙ КЛЮЧ
  2. УНИКАЛЬНЫЙ КЛЮЧ
  3. ИНОСТРАННЫЙ КЛЮЧ
  4. Ни один из вышеперечисленных

Ответ: C.

86. Какой из перечисленных является основным и основным типом индекса?

  1. Битовая карта
  2. В-дерево
  3. уникальный
  4. Неуникальная

Ответ: A, B. Индекс B-дерева (сбалансированного дерева) является наиболее распространенным индексом, используемым в Oracle. Вы можете создать этот тип индекса с помощью основного оператора CREATE INDEX. Индекс растрового изображения отличается по структуре и использованию от индекса B-дерева. Этот индекс полезен для улучшения запросов к столбцам с низкой избирательностью (низкая мощность или небольшое количество отдельных значений).

87. Вам нужно ускорить запрос, создав индекс по FIRST_NAME таблицы EMPLOYEES. Какое из следующих утверждений вы можете использовать? (Предположим, структура таблицы, как показано)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
  1. CREATE INDEX emp_first_name_idx 
    ON employees (first_name); 
  2. CREATE INDEX emp_first_name_idx 
    ON employees first_name; 
  3. ALTER INDEX emp_first_name_idx 
    ON employees (first_name); 
  4. Ни один из вышеперечисленных

Ответ: А.

88.Что делает ключевое слово UNIQUE при создании индексов?

  1. Он указывает, что значение столбца (столбцов), для которого создается индекс, должно быть уникальным
  2. Вы не можете использовать ключевое слово UNIQUE при создании индексов
  3. Указывает, что созданный индекс может использоваться только одной таблицей.
  4. Ни один из вышеперечисленных

Ответ: A. Уникальный индекс обычно создается автоматически, когда для столбца определено ограничение PRIMARY KEY или UNIQUE. Уникальные индексы также могут быть явно созданы путем включения ключевого слова UNIQUE в оператор CREATE INDEX.

89. Что произойдет, если вы укажете ключевое слово BITMAP при создании индекса?

  1. Он создает индекс с битовой картой для каждого отдельного ключа.
  2. Он не создает индекс по каждой строке отдельно
  3. Оба а и Б
  4. Ни один из вышеперечисленных

Ответ: C.

90. У вас есть написанные запросы, которые, как ожидается, будут получать менее 2–4% строк. Что из нижеперечисленного можно применить к соответствующим таблицам для достижения производительности запроса? (Выбрать лучший ответ)

  1. Индексы
  2. Оператор UNION
  3. Оператор МИНУС
  4. Ни один из вышеперечисленных

Ответ: A. Индексы — лучший способ достичь производительности запросов. Тяжелые операции ввода-вывода можно уменьшить и упростить с помощью сканирования индекса.

91. В каких сценариях могут быть полезны индексы?

  1. Если таблица (ы) очень большая
  2. Если столбец имеет меньше значений
  3. Если столбец содержит большое количество значений NULL
  4. Если столбец имеет широкий диапазон значений

Ответ: C, D.

92. Таблица СОТРУДНИКОВ обновляется часто. Когда индексы могут быть созданы на этой таблице? (Выберите наиболее подходящий ответ)

  1. Индексы не следует создавать, если таблица часто обновляется
  2. Индексы должны быть созданы во время создания таблицы
  3. Ни из А, ни из В
  4. Ни один из вышеперечисленных

Ответ: A. Частые или массовые операции DML с таблицей с индексом увеличивают затраты на обслуживание сегмента индекса, что может повлиять на производительность операции DML.

93. Рассмотрите следующий запрос и ответьте на следующий запрос. Предположим, что столбцы EMPLOYEE_ID, DEPARTMENT_ID и FIRST_NAME таблицы EMPLOYEES проиндексированы. (Предположим, что структура таблицы задана)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
SELECT first_name, last_name 
FROM employees 
WHERE comm IS NULL; 

Поможут ли существующие индексы в этом случае, если в таблице СОТРУДНИКИ 1 миллион строк?

  1. да
  2. нет
  3. Это может помочь
  4. Ни один из вышеперечисленных

Ответ: B. Индексы не используются, когда предикаты запроса не содержат столбцы, по которым создается индекс.

94. Что из следующего удалит Индекс?

  1. DELETE FROM index_name; 
  2. DROP INDEX index_name; 
  3. DROP INDEX;
  4. Ни один из вышеперечисленных

Ответ: B. У вас должна быть привилегия DROP ANY INDEX для удаления индекса.