1. Какие проблемы, возникавшие при работе с базами данных в середине XX века, привели к созданию реляционной модели?
В середине XX века проблемы работы с базами данных включали избыточность данных, сложность управления, ограниченные возможности поиска и обновления, а также зависимость структуры данных от прикладных программ. Это приводило к неудобству работы и высокой вероятности ошибок. Реляционная модель была создана для упрощения представления данных, устранения избыточности и обеспечения независимости данных от приложений.
2. Какими словами можно заменить термины «сущность», «атрибут», «кортеж», «отношение», когда мы говорим о представлении данных в виде таблиц?
«Сущность» — это объект или элемент, который описывается (например, клиент). «Атрибут» — это характеристика или свойство объекта (например, имя клиента). «Кортеж» — это строка таблицы, представляющая конкретный объект (например, запись о конкретном клиенте). «Отношение» — это таблица данных.
3. Какими свойствами должны обладать таблицы в реляционной базе данных?
Каждая таблица представляет одну сущность. Каждая строка (кортеж) уникальна. Поля (атрибуты) содержат только одно значение, и каждое поле имеет уникальное имя. Порядок строк и столбцов не влияет на данные. Все значения в одном столбце имеют один и тот же тип данных.
4. Каковы цели нормализации?
Цели нормализации включают устранение избыточности данных, предотвращение аномалий при добавлении, обновлении или удалении записей, а также упрощение структуры базы данных для повышения её гибкости и производительности.
5. Как вы понимаете выражение «поле должно быть неделимым»? Приведите примеры.
Выражение «поле должно быть неделимым» означает, что каждое поле должно содержать только одно значение, которое не делится на более мелкие элементы. Например:
Поле «ФИО» делимо на имя, отчество и фамилию. Лучше использовать три отдельных поля. Поле «Адрес» делимо на улицу, номер дома и номер квартиры. Также лучше разделить эти данные.
6. Почему нужно стараться, чтобы структура базы данных (состав таблиц, количество и состав полей) не менялась во время её использования?
Структура базы данных не должна меняться во время её использования, чтобы избежать ошибок и несогласованности данных. Изменение структуры может привести к необходимости переработки существующих приложений, нарушению связей между таблицами и потере целостности данных.
7. Почему не нужно хранить данные, которые могут быть вычислены через другие данные?
Хранение данных, которые могут быть вычислены через другие данные, увеличивает избыточность и вероятность ошибок. Например, если в базе данных хранятся и дата рождения, и возраст, последний может стать несоответствующим при изменении текущей даты. Лучше вычислять такие значения при необходимости.