Создание базы данных для торгового дома «Белый Кот», занимающегося продажей экологически чистых хозяйственных товаров, страница 3

3.Дата/время, т.е. в полях такого типа содержится диапазон значений даты и времени. Это поля 'Дата найма', 'Дата начала сотрудничества', 'Дата продажи'.

4.Денежный. Особенность данного типа в том, что выделяются сотые доли, тысячи и знак валюты. В данном случае используется в поле 'Цена товара'.

Я применила некоторые дополнительные свойства к нескольким полям.

В поле 'Количество' Параметр 'Размер поля' я установила 'Байт'  (покупка не превышает 255 товаров), число десятичных знаков – 0. В полях с типом данных дата/время – средний формат даты (например, 25-окт-2005). В поле 'Цена товара' я ввела формат поля Евро, число десятичных знаков – 2. Поля с текстовым типом данных оставила без изменения.

К полям 'Пол сотрудника' и 'Страна' я применила Мастер подстановок (подробнее в п.4.1.1).

Таблицы приведены в Приложении 2.

4.1.1.Фиксированные списки

Фиксированный список предполагает заполнение поля путём выбора из перечня неизменных допустимых значений. Я создаю фиксированные списки на поля 'Пол сотрудника' (значения: 'М' и 'Ж') и 'Страна' (значения: 'Нидерланды', 'Испания', 'Швеция'). Для этого в столбце Тип данных выбираю элемент Мастер подстановок. Далее в окне Создание подстановки выбираю Будет введён фиксированный набор значений → число столбцов равно 1 → ввожу значения, из которых будет выбираться нужное.

4.1.2.Нефиксированные списки

Нефиксированный список предполагает заполнение поля значениями из другой таблицы. Создаётся на внешние ключи, поэтому в моей БД максимальное их количество – 4 (равно количеству взаимосвязей). Но так как в БД присутствует 2 сложных формы (подробнее в п.4.3), то списков будет 2. Создаю их на поля 'Код товара' (выводятся Вид товара, Цена товара), 'Код сотрудника' (выводятся ФИО сотрудника и Телефон сотрудника), выбирая в Типе данных Мастер подстановок. С помощью нефиксированных списков я  конкретизировала сотрудников, товары для таблиц, в которых данные поля являются внешними ключами.

4.1.3.Кодировка

Для удобства поиска информации в БД я ввела систему кодирования.

В таблице 'Сотрудники' применила кодировку к  полю Код сотрудника. Она имеет вид: 02/М-01. Первые двумя цифрами обозначен год принятия на работу, заглавная буква – первая буква фамилии сотрудника, последние 2 цифры – это порядковый номер. Также я прописала Маску ввода. Для этого в Свойствах поля я создала маску ввода 'Код сотрудника', имеющую вид: 00\/>L\-00.

В таблице 'Товары' применила кодировку к полю Код товара. Она имеет вид: А/ГЕР-03. Первая буква – определяют тип товара (А – ароматические средства, М – изделия из микроволокна, К – ковры, Ш – швабры,щетки), следующие 3 обозначают страну производителя. Маска ввода имеет вид: >L\/>LLL\-00.

В таблице 'Продажи' применила кодировку к полю Код продажи. Она имеет вид: 06/05-12. Первые четырьмя цифрами обозначены месяц/год акта продажи, 2 последние цифры – порядковый номер. Маска ввода имеет вид: 00\/00\-00.

4.2.Схема БД

Схема БД отображает взаимосвязи между таблицами и, следовательно, устанавливает логическую взаимосвязь данных. Связь между таблицами устанавливается путём определения в одной таблице поля, соответствующего ключу другой таблицы. Но, т.к. я уже ввела нефиксированные списки, то некоторые взаимосвязи установлены, однако не установлен тип отношения.

          Чтобы установить оставшиеся типы взаимосвязей и изменить существующие захожу СервисСхема данных. Пока установлены лишь 2 взаимосвязи: 'Продажи' - 'Сотрудники' по Коду сотрудника, 'Продажа товаров' - 'Товары' по Коду товара. Чтобы отобразить тип отношения в схеме и обеспечить ссылочную целостность в окне Изменение связей отмечаю 3 пункта: “Обеспечение ссылочной целостности”, “Каскадное обновление связанных полей”, “Каскадное удаление связанных записей”.

Устанавливаю ещё две взаимосвязи 'Продажи' - 'Продажа товаров' (перетаскиваю поле 'Код продажи' из одной таблицы в другую, в  открывшемся диалоговом окне отмечаю те же 3 пункта, что и в предыдущих взаимосвязях), 'Товары' - 'Производители' (добавляю в схему таблицу 'Производители', перетаскиваю поле 'Код производителя' из одной таблицы в другую, в открывшемся диалоговом окне отмечаю те же 3 пункта, что и в предыдущих взаимосвязях). Таким образом, получила схему БД.

 4.3.Формы

4.3.1.Простые формы

Объект форма используется для ввода и редактирования данных, которые отображаются на экране в определённом виде. В проектируемой БД 1 простая форма: 'Сотрудники' (в её основе – одноимённая таблица).

В окне БД выбираю вкладку Формы → Создание с помощью мастера. Простую форму создаю в один столбец. В режиме конструктора с помощью панели элементов создаю Заголовок и 4 кнопки: предыдущая и следующая записи, добавить запись, выход. Кнопки размещаю в примечании к форме.

4.3.2.Сложные формы

Сложная форма отличается от простой тем, что создана на основании нескольких таблиц. Максимальное количество сложных форм равно количеству взаимосвязей. Определю нужное количество сложных форм. Прежде всего, рассмотрю, какие сложные формы нужно создать с использованием центральной таблицы.

Сотрудники

1

 
Производители

 

 
Продажа товаров

1

 

 

 

1

 

1

 


Продажи

Товары

В проектируемой БД есть 2 потока информации (Сотрудники – Продажи – Продажа товаров, Производители – Товары - Продажа товаров). По ним определяется, что 'Продажа товаров' – центральная таблица (потоки направлены к ней, она имеет 2 внешних ключа). Следовательно, сложная форма будет создана с использованием таблицы 'Продажа товаров' (она будет подчинённой формой). Цель создания сложной формы – упростить ввод данных.

Возможны 2 варианта:

1.

Код товара

Вид товара

Тип товара

Размер товара

Код производителя

Цена товара

Код продажи

Количество