Общие сведения. Слово «реляционная» происходит от английского relation — отношение
Слово «реляционная» происходит от английского relation — отношение. Отношение — математическое понятие, но в терминологии моделей данных отношения удобно изображать в виде таблиц, строки которых соответствуют кортежам отношения, а столбцы — атрибутам. Ключом называют любую функцию от атрибутов кортежа, которая может быть использована для его иденти- фикации. Такая функция может быть значением одного из атрибутов (простой ключ) или задаваться алгебраическим выражением, включающим в себя значения нескольких атрибутов (составной ключ). Несмотря на то что данные в строках каждого из столбцов составного ключа могут и повторяться, комбинация данных каждой строки этих столбцов является уникальной. Например, в таблице СТУДЕНТЫ есть столбцы Фамилия и Год рождения. В каждом из столбцов есть некоторые повторяющиеся данные, т.е. одинаковые фамилии и одинаковые года рождения. Но если студенты, имеющие одинаковые фамилии, имеют разные года рождения, то эти столбцы можно использовать в качестве составного ключа. В Access можно выделить три типа ключевых полей: простой ключ, составной ключ и внешний ключ. Одно из важнейших достоинств реляционных баз данных состоит в том, что можно хранить логически сгруппированные данные в разных таблицах и задавать связи между ними, объединяя эти таблицы в единую базу. Для задания связи таблицы должны иметь поля с одинаковыми именами или хотя бы с одинаковыми форматами данных. Связь между таблицами устанавливает отношения между совпадающими значениями в этих полях. Такая организация позволяет уменьшить избыточность хранимых данных, упрощает их ввод и организацию запросов и отчетов. Поясним это на следующем примере. В Access можно задать три типа связей между таблицами: один ко многим, многие ко многим, один к одному. Наиболее часто используемый тип связи между таблицами один ко многим. При такой связи каждой записи в таблице А может соответствовать несколько записей в таблице В (поля с этими записями называют внешними ключами), а запись в таблице В не может иметь более одной соответствующей ей записи в таблице А. При связи типа многие ко многим одной записи в таблице А может соответствовать несколько записей в таблице В, а одной записи в таблице В — несколько записей в таблице А. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит по крайней мере из двух полей, одно из которых является общим с таблицей А, а другое — общим с таблицей В. При связи типа один к одному запись в таблице А может иметь не более одной связанной записи в таблице Д и наоборот. Этот тип связи используется не очень часто, поскольку такие данные можно поместить в одну таблицу. Связь типа один к одному применяют для разделения очень широких таблиц, отделения части таблицы в целях ее защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице. Тип создаваемой связи зависит от полей, для которых определяется эта связь: • связь типа один ко многим задается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс, т.е. значения в этом поле не повторяются; • связь типа один к одному задается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы; • связь типа многие ко многим фактически представляет собой две связи типа один ко многим через третью таблицу, ключ которой состоит по крайней мере из двух полей, общих для двух других таблиц. Целостность данных определяет систему правил, используемых в СУБД Access для поддержания связей между записями в связанных таблицах (таблицах, объединенных с помощью связи), а также обеспечивает защиту от случайного удаления или изменения связанных данных. Контролировать целостность данных можно при выполнении следующих условий: • связанное поле (поле, посредством которого осуществляется связь) одной таблицы является ключевым полем или имеет уникальный индекс; • связанные поля имеют один тип данных. (Здесь существует исключение: поле счетчика может быть связано с числовым полем, если оно имеет тип Длинное целое.)', • обе таблицы принадлежат одной базе данных Access. Для установки целостности данных база данных, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно.
|