Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_пособие_СУБД_для_Москвы.doc
Скачиваний:
17
Добавлен:
31.07.2019
Размер:
9.45 Mб
Скачать
    1. Некоторые правила построения баз данных

Один из важных моментов при работе с БД является разработка ее структуры. И чем больше данных в БД, тем серьезнее надо отнестись к проработке ее структуры.

Существуют стандартные приемы и методы, следование которым позволяет получить хороший результат. Наиболее известными, пожалуй, являются нормализация, индексирование и целостность. Рассмотрим эти методы.

      1. Реляционные отношения между таблицами. Целостность данных

Объектно-связный подход, положенный в основу многих реляционных СУБД, осуществляет поддержку семантической целостности данных при их обновлении на трех уровнях: уровне внешних ключей, внутреннем (первичных ключей) и полей.

Требования целостности на уровне внешних ключей представляет собой основную аксиому целостности, т.е. внешние ключи таблиц БД, отображающие связи, должны ссылаться на актуально существующие в БД объекты (первичные ключи связанных таблиц). Другими словами, между таблицами БД никогда не должно образовываться "висячих ссылок". Таким образом, при вставке новой записи в связную таблицу проводится контроль на существование связываемых объектов в соответствующих объектных таблицах и, наоборот, условием удаления строки из объектной таблицы является отсутствие связей у удаляемого объекта.

Требование внутренней целостности есть требование уникальности ключа. Проверка осуществляется обычно при вставке новой записи.

Наконец, поддержка целостности полей осуществляется при обновляющих операциях (вставка/модификация) записи путем контроля значения каждого атрибута (значения поля) на принадлежность соответствующему типу данных или допустимому диапазону.

Остановимся подробнее на целостности на уровне внешних ключей.

Еще раз повторим, что связь между таблицами осуществляется с помощью внешнего ключа одной таблицы, который содержит значение первичного ключа другой таблицы. При этом первая таблица называется подчиненной (дочерней), а вторая - главной (родительской). При этом между таблицами бывают следующие отношения "один-к-одному", "один-ко-многим", "многие-к-одному" и "многие-ко-многим".

Отношение «один-к-одному»

Отношение "один-к-одному" имеет место, когда одной записи в родительской таблице соответствует одна запись в дочерней таблице. Данное отношение встречается не часто, его используют, если не хотят, чтобы таблица БД «распухала» от ненужной информации. Такая связь приводит к тому, что для чтения связной информации в нескольких таблицах приходится производить несколько операций чтения, что замедляет процесс получения информации. БД, в состав которых входит связь "один-к-одному", не может считаться полностью нормализованной (о нормализации см. ниже).

Таблица «Сотрудники» Таблица «Информация о

сотрудниках»

ФИО

Должность

Отдел

Год рожд.

Кол-во детей

1

Иванов В.В.

инженер

10

1

1950

3

2

Петров П.П.

бухгалтер

20

2

1960

2

3

Васин И.И.

прораб

10

3

1970

1