Процес нормалізації БД.
1НФ: Таблиця БД знаходиться в Першій нормальній формі тоді й тільки тоді, коли всі її поля унікальні та неподільні.
Якщо вважати, що поля «Адреса» (таблиця «Клієнт») та «Технічні параметри» (таблиця «Монітор») є неподільними, то всі таблиці БД знаходяться у 1НФ.
2НФ: Таблиця БД знаходиться в Другій нормальній формі тоді й тільки тоді, коли вона знаходиться у 1НФ та всі неключові поля однозначно визначаються первинним ключем.
На цьому етапі всі таблиці БД знаходяться у 2НФ.
3НФ: Таблиця БД знаходиться в Третій нормальній формі тоді й тільки тоді, коли вона знаходиться у 2НФ та залежність всіх неключових полів від первинного ключа нетранзитивна[2].
Якщо вважати, що одному й тому ж значенню поля «Телефон» можуть відповідати різні значення поля «Адреса», то транзитивної залежності немає. Проводимо аналіз всіх неключових полів і робимо висновок, що всі таблиці БД знаходяться у 3НФ.
Рис. 2. Схема логічної моделі (ключові поля виділені курсивом)
Опис фізичної моделі БД (ключові поля виділені курсивом)
ФІРМА-ВИРОБНИК
Имя поля
| Тип данных
| Размер поля
| Новые значения
| Обязательное поле
| Пустые строки
| Индексированное поле
|
Код виробника
| Счетчик
| Длинное целое
| Последовательные
| –
| –
| Да (Совпадения не допускаются)
|
Виробник
| Текстовый
|
| –
| Да
| Нет
| Да (Совпадения не допускаются)
|
КЛІЄНТ
Имя поля
| Тип данных
| Размер поля
| Новые значения
| Маска ввода
| Обязательное поле
| Пустые строки
| Индексированное поле
|
Код клієнта
| Счетчик
| Длинное целое
| Последовательные
| –
| –
| –
| Да (Совпадения не допускаются)
|
Клієнт
| Текстовый
|
| –
| –
| Да
| Нет
| Да (Совпадения допускаются)
|
Телефон
| Текстовый
|
| –
| 900\-00\-00
| Нет
| Нет
| Нет
|
Адреса
| Текстовый
|
| –
| –
| Нет
| Нет
| Нет
|
МОНІТОР
Имя поля
| Тип данных
| Размер поля
| Формат поля
| Число десятичных знаков
| Значение по умолчанию
| Обязательное поле
| Пустые строки
| Индексированное поле
|
Модель
| Текстовый
|
| –
| –
| –
| Да
| Нет
| Да (Совпадения не допускаются)
|
Код виробника
| Числовой
| Длинное целое
| –
| Авто
| –
| Да
| –
| Нет
|
Технічні параметри
| Текстовый
|
| –
| –
| –
| Да
| Нет
| Нет
|
Оптова ціна
| Денежный
| –
| Денежный
|
|
| Да
| –
| Нет
|
Роздрібна ціна
| Денежный
| –
| Денежный
|
|
| Да
| –
| Нет
|
ЗАМОВЛЕННЯ
Имя поля
| Тип данных
| Размер поля
| Формат поля
| Маска ввода
| Условие на значение
| Сообщение об ошибке
| Обязательное поле
| Пустые строки
| Индексированное поле
|
Номер замовлення
| Текстовый
|
| –
| –
| –
| –
| Да
| Нет
| Да (Совпадения не допускаются)
|
Код клієнта
| Числовой
| Длинное целое
| –
| –
| –
| –
| Да
| –
| Нет
|
Дата замовлення
| Дата\время
| –
| Краткий формат даты
| 00/00/0000;0;_
| >=#01.01.2000# And <=Date()
| Невірно введено дату замовлення
| Да
| –
| Нет
|
Дата оплати
| Дата\время
| –
| Краткий формат даты
| 00/00/0000;0;_
| –
| –
| Нет
| –
| Нет
|
ВМІСТ ЗАМОВЛЕННЯ
Имя поля
| Тип данных
| Размер поля
| Условие на значение
| Сообщение об ошибке
| Обязательное поле
| Пустые строки
| Индексированное поле
|
Номер замовлення
| Текстовый
|
| –
| –
| Да
| Нет
| Нет
|
Модель
| Текстовый
|
| –
| –
| Да
| Нет
| Нет
|
Кількість
| Числовой
| Байт
| >0
| Невірно введено кількість
| Да
| –
| Нет
|
©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.