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

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

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

Имя: ____________________   Дата: ____________

1.Лёгкая

Что такое первичный ключ (primary key)?

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

Что делает ограничение CHECK?

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

Что обозначает подстановочный символ % в шаблоне LIKE?

  1. AЛюбую одну цифру
  2. BЛюбую последовательность из нуля или более символов
  3. CРовно один символ в этой позиции строки
  4. DКонец строки
4.Средняя

Какой оператор удаляет все строки таблицы, сохраняет её структуру и не может иметь предложения WHERE?

  1. ADROP TABLE
  2. BDELETE FROM с предложением WHERE
  3. CALTER TABLE
  4. DTRUNCATE TABLE
5.Средняя

Что возвращает INTERSECT, использованный между двумя запросами SELECT?

  1. AСтроки, присутствующие в обоих результатах
  2. BВсе строки обоих результатов
  3. CДекартово произведение результатов
  4. DСтроки, которые есть в первом результате, но нет во втором
6.Средняя

Что такое «грязное чтение» (dirty read)?

  1. AДвукратное чтение одной строки с получением одного и того же значения
  2. BЧтение данных с повреждённого диска
  3. CЧтение данных без предложения WHERE
  4. DЧтение данных, записанных другой транзакцией, которая ещё не зафиксирована
7.Сложная

В таблице миллион строк и логический столбец is_active, равный TRUE для 95% строк. Почему оптимизатор может игнорировать индекс по is_active для WHERE is_active = TRUE?

  1. AПодходит большинство строк, поэтому полное сканирование таблицы дешевле множества обращений к индексу
  2. BИндекс считает TRUE значением NULL
  3. CИндексы нельзя создавать по логическим столбцам
  4. DОптимизатор никогда не использует индексы в предложениях WHERE
8.Сложная

Нормальная форма Бойса–Кодда (BCNF) требует, чтобы для каждой нетривиальной функциональной зависимости X → Y:

  1. AX был суперключом
  2. BY был атомарным
  3. CX содержал NULL
  4. DY был первичным ключом

Ответы

  1. 1. C · Столбец или набор столбцов, однозначно идентифицирующий каждую строку
  2. 2. C · Отклоняет строки, значения которых не удовлетворяют условию
  3. 3. B · Любую последовательность из нуля или более символов
  4. 4. D · TRUNCATE TABLE
  5. 5. A · Строки, присутствующие в обоих результатах
  6. 6. D · Чтение данных, записанных другой транзакцией, которая ещё не зафиксирована
  7. 7. A · Подходит большинство строк, поэтому полное сканирование таблицы дешевле множества обращений к индексу
  8. 8. A · X был суперключом

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