Слайд 3Нормализация базы данных
1НФ – таблица не содержит повторяющихся групп и каждое
поле неделимо.
2НФ – все поля таблицы зависят от первичного ключа, а те поля, которые зависят только от части первичного ключа должны быть выделены в отдельные таблицы.
3НФ – таблицы не имеют транзитивных зависимостей между неключевыми полями.
Слайд 4Пример
Пусть необходимо автоматизировать процесс отпуска товаров со склада. Товары отпускаются по
накладной примерно такого вида:
Накладная № 21
Дата Покупатель Адрес
10.01.16 ООО «Геракл» г.Москва, ул.Стромынка, 20
Отпущен товар Кол-во Ед.изм. Цена Стоимость
Тушенка 1000 банка 15 15000
Сахар 200 кг 14 2800
Макароны 1000 кг 8 8000
Итого: 25800
Приведем данные к первой нормальной форме, для чего сведем имеющиеся данные в одну таблицу:
Слайд 5
Для приведения ко второй нормальной форме сначала выделим первичный ключ.
После дальнейшего
анализа зависимости полей таблицы от полей первичного ключа разделим данные на таблицы и установим связи.
Слайд 6Проанализируем БД на наличие транзитивных зависимостей (поле Общая_стоим) и приведем БД
к третьей нормальной форме:
Слайд 7Создание псевдонима с помощью утилиты BDE Administrator
Object -> New
Object -> Apply
Слайд 8Создание таблиц с помощью утилиты Database Desktop
1. Установить рабочий псевдоним File
-> Working Directory
Слайд 9Создание таблиц с помощью утилиты Database Desktop
2. Создать таблицу File ->
New -> Table
Слайд 10Типы полей
A (Alpha) – строковое поле, может содержать до 255 ASCII-символов.
Number
– числовое поле, может содержать вещественные числа в диапазоне 10-307 – 10308 и до 15 знаков после запятой.
$ (Money) – числовое поле с соответствующим валютным знаком. Обычно отображается два разряда после запятой.
Short – целое число в диапазоне между -32767 и +32767.
Long Integer – целое число в диапазоне -2147483647 до +2147483647.
Date – может содержать любую дату до 31 декабря 9999 года.
Time – целое число миллисекунд, прошедших с 00:00. Это число перед отображением преобразуется в нужный формат времени.
@ (Timestamp) – в одном поле хранятся дата и время.
Memo – строки длиной более 255 символов. Данные этих полей хранятся в отдельном файле, а в таблице хранится ссылка на файл.
FormattedMemo – используется для хранения строк длиной более 255 символов, включающих информацию форматирования.
Graphic – в таких полях сохраняются изображения.
Logical – в логических полях сохраняются только значения True и False. Этот тип столбца соответствует типу Boolean.
± (Autoincrement) – хранит целое число, значение которого автоматически увеличивается на единицу при каждом добавлении строки в таблицу. Значение является уникальным для таблицы и может использоваться в качестве первичного ключа. Числа, принадлежащие удаленным строкам, повторно не генерируется.
Слайд 11Дополнительные настройки структуры
Secondary Indexes – задание индекса;
Validity Checks – ограничения на
ввод значений поля;
Password Security – определение пароля;
Referential Integrity – определение ссылочной целостности;
Table Language – задание языка отображаемых символов;
Table Lookup – задание полей просмотра.