Робочий аркуш «Бази даних і SQL» з відповідями

Безкоштовний робочий аркуш для друку «Бази даних і SQL»: 8 задач від легких до рівня іспиту, з ключем відповідей. Роздрукуйте його або збережіть як PDF.

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

Ім’я: ____________________   Дата: ____________

1.Легка

Що гарантує обмеження UNIQUE на стовпці?

  1. AЖодні два рядки не мають однакового значення, відмінного від NULL, у цьому стовпці
  2. BСтовпець не можна змінити після вставлення
  3. CСтовпець автоматично стає первинним ключем таблиці
  4. DЗначення стовпця відсортовані
2.Легка

Як відсортувати результат від найвищої до найнижчої зарплати?

  1. AGROUP BY salary DESC
  2. BORDER BY salary DESC
  3. CSORT salary DOWN
  4. DORDER BY salary ASC
3.Легка

Для чого використовують діаграму «сутність–зв’язок» (ER)?

  1. AЩоб показати, як виконується запит
  2. BДля переліку користувачів бази даних
  3. CДля моделювання сутностей, їхніх атрибутів і зв’язків під час проєктування бази даних
  4. DДля вимірювання продуктивності бази даних
4.Середня

Третя нормальна форма (3NF) усуває:

  1. AТранзитивні залежності між неключовими атрибутами
  2. BАтомарні значення
  3. CСкладені ключі
  4. DНадлишкові індекси на стовпцях, що не входять до ключа
5.Середня

Яка інструкція видаляє всі рядки таблиці, зберігає її структуру й не може мати речення WHERE?

  1. ATRUNCATE TABLE
  2. BALTER TABLE
  3. CDROP TABLE
  4. DDELETE FROM з реченням WHERE
6.Середня

Який запит виводить клієнтів, які ніколи не робили замовлень?

  1. ASELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  2. BSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  3. CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
  4. DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
7.Складна

Транзакція T1 блокує рядок A й чекає на рядок B, а T2 блокує рядок B й чекає на рядок A. Що робить типова СКБД?

  1. AФіксує обидві транзакції одночасно
  2. BДозволяє обом транзакціям чекати, доки одна з них нормально зафіксується
  3. CОб’єднує дві транзакції в одну
  4. DВиявляє взаємне блокування й перериває одну транзакцію як жертву
8.Складна

Який відомий недолік декомпозиції таблиць до BCNF порівняно з 3NF?

  1. AДекомпозиція завжди втрачає дані під час зворотного з’єднання
  2. BBCNF допускає більше надлишковості, ніж 3NF
  3. CТаблиці в BCNF не можуть мати первинних ключів
  4. DДеякі функціональні залежності вже не можна перевірити в межах однієї таблиці

Ключ відповідей

  1. 1. A · Жодні два рядки не мають однакового значення, відмінного від NULL, у цьому стовпці
  2. 2. B · ORDER BY salary DESC
  3. 3. C · Для моделювання сутностей, їхніх атрибутів і зв’язків під час проєктування бази даних
  4. 4. A · Транзитивні залежності між неключовими атрибутами
  5. 5. A · TRUNCATE TABLE
  6. 6. B · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  7. 7. D · Виявляє взаємне блокування й перериває одну транзакцію як жертву
  8. 8. D · Деякі функціональні залежності вже не можна перевірити в межах однієї таблиці

Повні покрокові розв’язки: тренуйте цю тему на examproblems.com.