скачать книгу бесплатно
Мыло
100
3
03.01.14
Мука
5000
4
08.01.14
Спички
10
Структура индексов по каждому из четырех полей показана в табл. 2.
Таблица 2
Индексированные поля таблицы
По дате прихода
По наименованию
По количеству
Дата
Номер записи
Товар
Номер записи
Количество
Номер записи
02.01.14
2
Мука
3
5000
3
03.01.14
3
Мыло
2
100
2
06.01.14
1
Спички
1
10
4
08.01.14
4
Спички
4
2
1
Если несколько товаров имеет одно и то же наименование, то достаточно найти в индексе, построенном по столбцу «Наименование», первую запись, а затем повторить чтение подряд для всех товаров с этим наименованием. То же самое касается даты и т. д.
Индексы наиболее выгодны для статичных таблиц, по которым часто выполняются запросы.
Лекция 5
Нормализация таблиц БД
При создании БД необходимо выполнить анализ предметной области, для которой разрабатывается БД. Процесс разработки БД является циклическим, т. е. на разных этапах происходят возвраты на более ранние этапы с целью коррекции. Субъективные взгляды разработчика всегда могут найти отражение в БД, но есть ряд объективных требований, соблюдение которых всегда может принести пользу. К таким требованиям относится нормализация БД. Процесс нормализации позволяет устранить избыточность данных и ускорить доступ к ним.
В основе нормализации лежит одна основная идея: поля таблицы должны зависеть только от ключа таблицы и ни от чего другого. Если это не так, то следует разбить таблицу на отдельные таблицы [1].
Общие требования нормализации формулируются в виде пяти нормальных форм (НФ), к которым последовательно приводятся таблицы БД. На практике наиболее часто применяются только первые три НФ [10].
Рассмотрим первую нормальную форму (1НФ).
Таблица в 1НФ должна удовлетворять следующим требованиям:
1. В таблице не должно быть повторяющихся записей;
2. Каждое поле таблицы должно быть неделимым (атомарным), т. е. на пересечении строки и столбца должен быть атомарный объект;
3. В таблице должны отсутствовать повторяющиеся группы полей.
Рассмотрим пример нормализации таблицы «Продажи», в которой содержится 21 поле (табл. 3).
Таблица 3
Продажи
Номер
Поле
Тип поля
1
Фамилия
Текст
2
Имя
Текст
3
Отчество
Текст
4
Телефон
Текст
5
Факс
Текст
6
Индекс
Текст
7
Страна
Текст
8
Город
Текст
9
Адрес
Текст
10
Название предприятия
Текст
11
Руководитель предприятия
Текст
12
Web-сайт предприятия
Текст