База данных библиотеки состоит из трёх таблиц: «Читатель» (Код_читателя, ФИО, Телефон), «Книга» (Код_книги, Название, Автор) и «Выдача» (Код_читателя, Код_книги, Дата_выдачи, Дата_возврата). Известно: у каждой книги один экземпляр; читатель может взять одну и ту же книгу повторно, но в другой день; в один день читатель берёт книгу не более одного раза; у членов одной семьи может быть общий телефон. Определите верные утверждения об этой реляционной базе данных.
Показать ответ и разборСкрыть ответ и разбор
Верный ответ
- BПоля «Код_читателя», «Код_книги» и «Дата_выдачи» вместе однозначно определяют запись в «Выдача»
- CПоле «Код_читателя» в таблице «Выдача» является внешним ключом
- FМежду таблицами «Читатель» и «Книга» реализована связь «многие ко многим» через таблицу «Выдача»
Разбор
1) Один читатель берёт много книг, а одна книга выдаётся многим читателям (в разное время). Это связь «многие ко многим», а таблица «Выдача» является связующей: верно «Между таблицами «Читатель» и «Книга» реализована связь «многие ко многим» через таблицу «Выдача»». 2) Пара «Код_читателя» + «Код_книги» может повторяться, если читатель берёт книгу повторно, поэтому она не может быть первичным ключом. Добавление «Дата_выдачи» делает комбинацию уникальной, так как в один день читатель берёт книгу не более одного раза: верно «Поля «Код_читателя», «Код_книги» и «Дата_выдачи» вместе однозначно определяют запись в «Выдача»». 3) «Код_читателя» в «Выдача» ссылается на первичный ключ таблицы «Читатель», то есть это внешний ключ: верно. 4) «Телефон» может совпадать у разных читателей, поэтому он не подходит на роль первичного ключа: неверно. 5) Если удалить читателя, в «Выдача» останутся записи со ссылкой на несуществующий код, а это нарушает ссылочную целостность: неверно. Ответ: три верных утверждения.