Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
68
Добавлен:
10.05.2015
Размер:
634.37 Кб
Скачать

2.2. Концептуальная модель данных.

Наряду с термином концептуальная модель данных используются синонимы:

  • концептуальная схема;

  • общая логическая структура базы данных;

  • схема.

2.2.1. Типы записей и типы элементов данных.

Рассмотрим таблицу 2 в следующем виде:

Т.е, мы выделим абстрактную часть таблицы – обобщенную запись.

Ее мы будем называть в дальнейшем типом записи → Ei , а конкретные значения записей – экземплярами записи.

Теперь рассмотрим элемент данных в следующем виде:

Обобщенный элемент данных – это абстракция элемента данных. В дальнейшем мы будем ее называть тип элемента данных → eij , а конкретные значения элемента данных – экземплярами элемента данных.

2.2.2. Типы связей – Pм.

Связи будем рассматривать между:

  • типами записей – связи между таблицами базы данных

  • типами элементов данных – связи внутри таблицы между атрибутами.

Различают 2 типа связи:

— F-связи или функциональные связи;

— MV-связи или множественные связи.

Если А и В являются типами записей или типами элементов данных, то при F-связи между А и В, в каждый момент времени каждому значению элемента А соответствует одно и только одно значение связанного с ним элемента В.

Условные обозначение:

При MV-связях между А и В, каждому элементу А соответствует 0,1 или М значений элемента В.

Условное обозначение:

Два типа связей дают четыре разновидности связей или отношений:

1:1

1:М

М:1

М:М

Раскроем содержание типов связей для таблиц базы данных.

Отношение один к одному.

Две таблицы находятся в отношении один к одному, когда записи в первичной таблице – А соответствует единственная запись во вторичной таблице В.

Отношение один ко многим.

Таблица, которая находится со стороны «1» называют родительской или первичной или главной таблицей. Таблица, которая находится на стороне «М» называют дочерней или вторичной или оперативной. При соотношении 1:М каждой записи в родительской таблице может не соответствовать ни одна запись дочерней таблицы, либо одна, две и более записей дочерней таблицы.

Отношение многие ко многим.

Одной записи в первичной таблице может соответствовать много записей во 2-ой таблице, а также многим записям в первичной таблице может соответствовать одна запись во 2-ой таблице.

Пример: произведение написано несколькими авторами и редактировано несколькими редакторами.

Ссылочная целостность данных.

Отношения между таблицами могут быть установлены как постоянные. Тогда связи между таблицами могут быть запрограммированы и осуществляться по определенным правилам при введении, обновлении и удалении записей в родительской и дочерней таблицах.

Также условия работы базы данных определяют ссылочную целостность данных.

Определение отношений между таблицами.

Таблицы базы данных взаимодействуют между собой. Одна из таблиц является родительской, другая – дочерней. Средствами СУБД определяются условия их взаимодействия.

При изменении значения первичного ключа в родительской таблице возможны следующие варианты действия:

    1. Cascade – при изменении значений полей первичного ключа в родительской таблице автоматически осуществляется каскадные изменения всех соответствующих значений в дочерней таблице.

    2. Restrict – не позволяется изменяться значение полей первичного ключа в родительской таблице, если в дочерней таблице имеется хотя бы одна запись, содержащая ссылку на изменяемую запись.

    3. Ignore – позволяет изменять значение полей первичного ключа в родительской таблице независимо от существования связанных записей в дочерней таблице.

При удалении записи в родительской таблице возможны следующие варианты действий:

  1. Cascade – при удалении записи в родительской таблице автоматически осуществляется каскадное удаление всех записей с дочерней таблицы связанных с удаляемой записью.

  2. Restrict – не позволяется удалять записи в родительской таблице, если в дочерней таблице имеется хотя бы одна запись, содержащая ссылку на удаляемую запись.

  3. Ignore - позволяет удалять записи в родительской таблице независимо от существования связанных записей в дочерней таблице.

При добавлении новой записи в дочернюю таблицу возможны следующие варианты действий:

  1. Restrict – не позволяет вводить запись в дочернюю таблицу, если значение индексного выражения дочерней таблицы не соответствует одной из записей в родительской таблице.

  2. Ignore – при вводе данных в дочернюю таблицу не анализирует значение индексного выражения.

Соседние файлы в папке Лекции по Базам данных - версия 9.01.10