Реляционная модель
Реляционная модель баз данных была предложена в 1969 г. сотрудником фирмы IBM Коддом. Модель основана на математической теории множеств и предикативной логике. Основная идея реляционной модели предполагает следующее. База данных состоит из ряда неупорядоченных таблиц, которыми можно манипулировать посредством непроцедурных операций, результатом выполнения которых также являются таблицы.
В реляционной модели таблицы используются для представления предметов или процессов реального мира. Каждая таблица служит для представления объектов только одного типа. Реальным объектом может быть заказчик, единица оборудования или счет-фактура. Таблицы могут содержать также информацию о событиях, например, заказах, визитах пациентов, выпуске продукции.
Таблицы состоят из строк и столбцов. Реляционная модель требует, чтобы каждая строка была уникальной. Если в таблице допускается дублирование строк, то продублированную строку будет невозможно однозначно идентифицировать программными средствами, что приведет к неопределенности.
Итак, база данных – это список (таблица) с информацией, состоящей из строк (называемых записями) и столбцов (называемых полями). База данных может быть, например, просто списком телефонных номеров клиентов, состоящим из двух столбцов: один – с названиями, другой – с телефонами и много строк, содержащих название и номера телефонов. Используя приведенную выше терминологию, можно сказать, что Клиент и Телефон являются полями, а каждая строка, содержащая имя и номер телефона, – записью. На рисунке 2.8 изображена простейшая база данных.
|
Поля |
Записи |
Рис. 2.8. База данных «Телефонный справочник клиентов»
Как видно из рисунка 2.8, для каждой строки телефонного справочника повторяются информация о городах и их кодах. Занесем всю информацию о городах в отдельную таблицу, которую назовем Города (табл. 2.1).
Таблица 2.1
Города
Код города | Город |
Москва | |
Ростов-на-Дону |
Уникальность строк таблицы Города гарантирует первичный ключ – столбец (или группа столбцов), содержащих уникальные в рамках данной таблицы значения. В нашем примере первичным ключом будет поле Код города.
Каждая таблица может иметь только один первичный ключ, несмотря на то что уникальные значения могут присутствовать в нескольких столбцах или группах столбцов. Все столбцы (или группы столбцов) с уникальными значениями называются возможными ключами. Именно из них выбирается первичный ключ. Остальные столбцы возможных ключей называются альтернативными ключами. Ключи могут быть простыми, состоящими из одного столбца, или составными, состоящими из нескольких столбцов. Решение о том, какой из возможных ключей станет первичным, принимает разработчик – здесь нет твердых правил. Однако, удобнее всего в качестве первичных ключей использовать числовые первичные ключи, например, столбцы типа Счетчик (AutoNumber), особенно если нет подходящих возможных ключей. Это связано с тем, что, во-первых, имена или названия объектов иногда меняются, а во-вторых, применение столбцов с числовыми данными для поиска и сортировки данных более эффективно, чем столбцов с текстовой информацией.
Хотя первичные ключи являются свойством конкретных таблиц, необходимость в них отпадает, если базы данных состоят только из независимых несвязанных таблиц. Особое значение первичные ключи приобретают при создании связей, объединяющих множество таблиц в единое информационное пространство (базу данных).
Внешний ключ – это столбец одной таблицы, который ссылается на первичный ключ другой таблицы. В таблице 2.2 показано, как первичный ключ из таблицы Города добавлен в таблицу Телефонный справочник как внешний ключ для обеспечения связи между таблицами.
Таблица 2.2
Дата добавления: 2015-01-15; просмотров: 648;