Реляционная база данных представлена пользователю как множество отношений или таблиц.
Реляционные объекты данных. Основными понятиями объектов реляционных баз данных являются отношение, кортеж, атрибут, домен и первичный ключ.
Домен - допустимое потенциальное множество значений данного типа, которые может принимать объект. Домен представляет набор скалярных значений, из которых разные атрибуты различных отношений берут свои реальные значения. Домены ограничивают сравнения, т.е. в общем случае требуется, чтобы сравниваемые значения принадлежали одному домену. Как следствие, домены ограничивают различные реляционные операции.
Отношение делится на две части: заголовок и тело. Заголовок — это набор атрибутов (точнее, пар имя атрибута: имя домена), а тело—это набор кортежей. Количество атрибутов называется степенью (или арностью), а количество кортежей - кардинальным числом.
Первичный ключ — это уникальный идентификатор для таблицы, т.е. столбец или такая комбинация столбцов, что в любой момент времени не существует двух строк, содержащих одинаковое значение в этом столбце или комбинации столбцов.
Целостность реляционных данных
Важнейшим вопросом при проектировании систем обработки данных (СОД) является обеспечение целостности данных. Проблема целостности состоит в обеспечении правильности данных в базе данных в любой момент времени. Целостность данных обеспечивается набором специальных предложений, называемых ограничениями целостности. Ограничения целостности представляют собой утверждения о допустимых значениях отдельных информационных единиц и связях между ними. Ограничения целостности определяются в большинстве случаев особенностями предметной области, хотя могут отражать и чисто информационные характеристики.
Ограничения целостности могут относиться к разным информационным объектам: атрибутам (полям), кортежам (строкам» записям), отношениям (таблицам, файлам), связям между файлами и т. п.
Для полей чаще всего используются следующие виды ограничений.
1. Тип и формат поля. 2. Задание диапазона значений. 3. Признак непустого поля. 4. Задание домена
Для поддерживания целостности по ссылкам существуют три подхода:
1) ОГРАНИЧИТЬ. Запрещается производить удаление кортежа, на который существуют ссылки.
2) При удалении кортежа, на который имеются ссылки, во всех ссылающихся кортежах значение внешнего ключа автоматически становится неопределенным.
3) КАСКАДИРОВАТЬ. Каскадное удаление — при удалении кортежа из отношения, на которое ведет ссылка, из ссылающегося отношения автоматически удаляются все ссылающиеся кортежи.
Помимо этого возможно использование процедур баз данных (хранимых процедур, триггеров), которые вызываются при выполнении операций удаления модификации и вставки и выполняют заданные действия. Выделяют три разновидности связи между таблицами базы данных:
"один- ко- многим"; " один- к- одному"; " многие- ко- многим".
Отношение "один- ко -многим " имеет место, когда одной записи родительской таблицы может соответствовать несколько записей дочерней. Связь "один- ко -многим" является самой распространенной для реляционных баз данных. Она позволяет моделировать также иерархические структуры данных.
Отношение "один- к- одному " имеет место, когда одной записи в родительской таблице соответствует одна запись в дочерней. Это отношение встречается намного реже, чем отношение "один- ко -многим". Его используют, если не хотят, чтобы таблица БД "распухала" от второстепенной информации, однако для чтения связанной информации в нескольких таблицах приходится производить ряд операций чтения вместо одной, когда данные хранятся в одной таблице.
Отношение "многие –ко -многим" применяется в следующих случаях: одной записи в родительской таблице соответствует более одной записи в дочерней; одной записи в дочерней таблице соответствует более одной записи в родительской.
Всякую связь "многие- ко -многим" в реляционной базе данных необходимо заменить на связь "один-ко-многим" (одну или более) с помощью введения дополнительных таблиц.