- •1.Входные данные
- •2. Постановка задачи
- •3. Первая нормальная форма
- •4. Вторая нормальная форма
- •5.Третья нормальная форма
- •6. Создание (формирование) запросов
- •Создание запроса на выборку с помощью Мастера
- •Создание запроса на выборку с помощью Конструктора
- •7. Проектирование форм и работа с ними
- •Создание формы с помощью Мастера
- •Создание формы с помощью Конструктора
- •8. Создание отчета как объекта базы данных
- •Структура отчета в режиме Конструктора
- •Способы создания отчета
- •9.Создание главной кнопочной формы
2. Постановка задачи
Разработать прикладное программное обеспечение деятельности аптечного склада. Аптечный склад занимается оптовой продажей лекарств больницам и аптекам города. В его ассортименте -тысячи наименований лекарств, а также различных аптечных принадлежностей (градусники, шприцы, бинты и т. д.) Возможна продажа лишь тех лекарств, которые одобрены Минздравом РФ, то есть имеют регистрационный номер Минздрава РФ. Поступающие лекарства сопровождаются документами - приходными накладными ведомостями. Покупатель получает счет-фактуру на выбранный товар, оплачивает сумму, указанную в ней, и после оплаты получает выходную накладную ведомость, по которой получает выбранный товар.
3. Первая нормальная форма
Первая нормальная форма. Таблица находится в первой нормальной форме, если значения всех ее полей атомарные, и в ней отсутствуют повторяющиеся группы полей. Приведем наши данные к первой нормальной форме. Выделим самостоятельные группы полей и поместим их в отдельные таблицы.
Таблица Товары
№ |
Поле |
Тип |
Размер |
Описание |
1 |
GoodID |
Числовой |
10 |
Регистрационный номер товара в базе |
2 |
Name |
Текстовый |
40 |
Название товара |
3 |
International |
Текстовый |
40 |
Международное название лекарства |
4 |
Begin |
Дата/Время |
Авто |
Дата производства |
5 |
End |
Дата/Время |
Авто |
Годен до |
6 |
Yes |
Логический |
1 |
Одобрено Минздравом РФ (да/нет) |
7 |
RF |
Текстовый |
20 |
Регистрационный номер минздрава РФ |
8 |
Producer |
Текстовый |
60 |
Данные о производителе |
9 |
Instructions |
Поле Memo |
Авто |
Инструкция к лекарству |
10 |
Batch |
Текстовый |
20 |
Вид упаковки |
Таблица Поставщики
1 |
Seller |
Текстовый |
20 |
Название поставщика |
2 |
Address |
Текстовый |
60 |
Адрес поставщика |
3 |
Phone |
Текстовый |
15 |
Телефон поставщика |
4 |
INN |
Текстовый |
10 |
ИНН поставщика |
Таблица Покупатели
1 |
ClientID |
Текстовый |
5 |
Номер покупателя |
2 |
Company |
Текстовый |
25 |
Название покупателя |
3 |
Address |
Текстовый |
60 |
Адрес покупателя |
4 |
Phone |
Текстовый |
15 |
Телефон покупателя |
5 |
CountNumber |
Числовой |
4 |
Номер счет-фактуры |
6 |
DateStart |
Дата/Время |
Авто |
Дата выписки счет-фактуры |
7 |
Sum |
Денежный |
15 |
Сумма к оплате |
8 |
Cash |
Логический |
1 |
Оплата наличными (да/нет) |
9 |
Worker |
Текстовый |
60 |
Выдавший счет-фактуру |
10 |
Invoice |
Числовой |
4 |
Номер выходной накладной |
11 |
INNClient |
Текстовый |
10 |
ИНН покупателя |
12 |
Seller |
Текстовый |
15 |
Фамилия продавца |
Удовлетворение требованиям первой нормальной формы называется структурной или синтаксической нормализацией.
Еще возможно возникновение проблем. Прежде всего, в базе данных много повторений значений - не внутри одной записи, а в пределах одной таблицы. А там, где есть повторяющиеся значения, возможны противоречия. Создадим еще одну таблиц – Накладная.
1 |
Sign |
Логический |
1 |
Признак посредника |
2 |
Date |
Дата/Время |
Авто |
Дата поступления на склад |
3 |
Price |
Денежный |
10 |
Цена товара |
4 |
GoodsInvoice |
Числовой |
4 |
Номер приходной накладной ведомости |
