Базы данных и SQL: лист заданий с ответами

Бесплатный лист заданий для печати по теме «Базы данных и SQL»: 8 задач от простых до экзаменационного уровня, с ответами. Распечатайте его или сохраните как PDF.

Для преподавателей: можно бесплатно печатать, копировать и использовать на занятиях. Каждый новый лист содержит новые значения и собственные ответы. Будем благодарны за ссылку на ExamProblems на странице вашего курса.

Имя: ____________________   Дата: ____________

1.Лёгкая

К какой части SQL относятся операторы CREATE, ALTER и DROP?

  1. AЯзык управления доступом к данным (DCL)
  2. BЯзык манипулирования данными (DML)
  3. CЯзык управления транзакциями (TCL)
  4. DЯзык определения данных (DDL)
2.Лёгкая

Что делает WHERE country IN ('NL', 'BE', 'DE')?

  1. AОставляет строки, в которых country равно любому значению из списка
  2. BСортирует строки в порядке списка
  3. CОставляет строки, в которых country нет в списке
  4. DОставляет строки, в которых значение country содержит сразу все три кода
3.Лёгкая

Какое ключевое слово SQL удаляет повторяющиеся строки из результата?

  1. ADIFFERENT
  2. BSINGLE
  3. CUNIQUE
  4. DDISTINCT
4.Средняя

Что даёт обобщённое табличное выражение (WITH name AS (...))?

  1. AПостоянную таблицу, остающуюся на диске, пока её не удалят
  2. BНового пользователя базы данных
  3. CИменованный временный результат, который можно использовать в пределах одного оператора
  4. DИндекс по столбцу
5.Средняя

Почему SELECT price * 2 AS double_price FROM t WHERE double_price > 10 в большинстве баз данных завершается ошибкой?

  1. AWHERE вычисляется раньше списка SELECT, поэтому псевдонима ещё не существует
  2. BАрифметика в списке SELECT не допускается
  3. CWHERE может сравнивать только текстовые столбцы
  4. DПсевдонимы не могут содержать подчёркивание
6.Средняя

Зачем создают индексы по столбцам?

  1. AЧтобы ускорить поиск и соединения по этим столбцам
  2. BЧтобы ускорить вставку и обновление по этим столбцам
  3. CЧтобы сэкономить место на диске
  4. DЧтобы предотвратить значения NULL
7.Сложная

Когда расписание параллельных транзакций называют сериализуемым?

  1. AКогда каждой транзакции присваивается порядковый номер
  2. BКогда его результат эквивалентен некоторому последовательному выполнению тех же транзакций
  3. CКогда транзакции выполняются только на одном процессоре
  4. DКогда ни одна транзакция никогда не читает данные
8.Сложная

Двухфазная блокировка (2PL) гарантирует:

  1. AЧто транзакции никогда не ждут
  2. BРасписания, сериализуемые по конфликтам (conflict-serializable)
  3. CЧто блокировки не нужны
  4. DЧто взаимоблокировки никогда не возникнут

Ответы

  1. 1. D · Язык определения данных (DDL)
  2. 2. A · Оставляет строки, в которых country равно любому значению из списка
  3. 3. D · DISTINCT
  4. 4. C · Именованный временный результат, который можно использовать в пределах одного оператора
  5. 5. A · WHERE вычисляется раньше списка SELECT, поэтому псевдонима ещё не существует
  6. 6. A · Чтобы ускорить поиск и соединения по этим столбцам
  7. 7. B · Когда его результат эквивалентен некоторому последовательному выполнению тех же транзакций
  8. 8. B · Расписания, сериализуемые по конфликтам (conflict-serializable)

Полные пошаговые решения: занимайтесь этой темой на examproblems.com.