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

Нормализация

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

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

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

Существует несколько нормальных форм.

  1. Первая нормальная форма.

  2. Вторая нормальная форма.

  3. Третья нормальная форма.

  4. Нормальная форма Бойса-Кодда.

  5. Четвёртая нормальная форма.

  6. Пятая нормальная форма.

Каждая следующая нормальная форма более «совершена», чем предыдущая, с точки зрения устранения избыточности.

Реляционная субд

Реляционная СУБД – СУБД, управляющая реляционными базами данных.

Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

  1. каждый элемент таблицы – один элемент данных.

  2. все ячейки в столбце таблицы однородные, то есть все элементы в столбце имеют одинаковый тип (числовой, символьный и т. д.)

  3. каждый столбец имеет уникальное имя

  4. одинаковые строки в таблице отсутствуют

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

Строка таблицы называется записью, колонка – полем.

Ключи

Первичный ключ (англ. primary key) – минимальное множество атрибутов, являющееся подмножеством заголовка данного отношения, составное значение которых уникально определяет кортеж отношения. На практике термин первичный ключ обозначает поле или группу полей таблицы базы данных, значение которого (или комбинация значений которых) используется в качестве уникального идентификатора записи этой таблицы. В реляционной теории таблица представляет собой неупорядоченный набор записей. Единственный способ идентифицировать определённую запись в этой таблице – это указать набор значений одного или нескольких полей, который был бы уникальным для этой записи. Отсюда и происходит понятие первичного ключа – набора полей таблицы, совокупность значений которых определена для любой записи (строки) этой таблицы и различна для любых двух записей.

Внешний ключ (англ. foreign key) – поле таблицы, предназначенное для хранения значения первичного ключа другой таблицы с целью организации связи между этими таблицами.

Пусть имеются таблицы A и B. Таблица A содержит поля a, b, c, d, из которых поле a – первичный ключ. Таблица B содержит поля x, y, z. В поле y содержится значение поля a одной из записей таблицы A. В таком случае поле y и называется внешним ключом таблицы A в таблице B.

Вот такой SQL-запрос вернёт все связанные пары записей из таблиц A и B:

select * from A, B where A.a = B.y;

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

СУБД поддерживают автоматический контроль ссылочной целостности на внешних ключах.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]