
Програмная реализация системы
4.1 Обоснование выбора СУБД
СУБД – это программа, предназначенная для создания, ведения и совместного использования БД несколькими пользователями. Основными функциями СУБД являются создание и удаление файлов данных и информации, поиск и изменение необходимых данных.
В настоящее время существует множество различных СУБД, наиболее известные из которых являются: Microsoft Access, dBase, FoxPro, Paradox, ИНЕС, СЕТОР, ПАЛЬМА и другие.
В зависимости от используемой модели данных существуют различные виды СУБД. В виду того, что для реализации данного ПП была выбрана РМД, необходимо также выбрать реляционную СУБД.
Одной из таких СУБД является Microsoft Access. Кроме основных требований к СУБД эта система содержит дополнительные преимущества. Так Microsoft Access позволяет реализовывать работу операторов реляционной алгебры в полном объеме, оптимизировать данные, а также обеспечивать защиту данных, создавая различные уровни пользователей, с ограничениями на доступ к информации. Кроме этого, Microsoft Access предоставляет возможность создания различных макросов и модулей, используя язык Visual Basic for Applications. К тому же Microsoft Access, как и многие другие программные приложения фирмы Microsoft, широко распространена во всем мире и доступна многим пользователям.
Исходя из перечисленных преимуществ, для реализации БД «Поставка овощей» целесообразно будет выбрать СУБД Microsoft Access.
4.2 Описание таблиц
Схема данных «Поставка овощей» была построена в Microsoft Access посредством создания таблиц и установления связей между ними.
Схема данных БД «Поставка овощей» представлена на рисунке 4.1.
Рисунок 4.1- «Схема данных»
Между
таблицами установлена связь 1:∞. Во всех
связях присутствует обеспечение
целостности данных. Каскадное удаление
не установлено в связях «Город» -
«Поставщики», «Тип корпуса» - «Товар»,
«Тип батареи» -
Между таблицами установлена связь 1:∞. Во всех связях присутствует обеспечение целостности данных. В связи «Изготовляется»-«Поставка» есть каскадное удаление, т.е. при удалении изготовителя, система спросит: «Действительно ли вы хотите удалить…», « Для этого измените параметры в связанной таблице». Остальные связи не имеют каскадного удаления.
Каскадное обновление в связях не установлено, т.к. все первичные ключи – счетчики, а значение в этом поле нельзя изменить, а значит, его не нужно обновлять.
3. Описание таблиц
Т
аблица
«Производитель»: справочник производителей.
#Код Производителя – тип счетчик, первичный ключ, содержит уникальные значения без повторений.
Название – название города, тип текстовый, размер 30 символов, обязательное поле без повторений, индексированное.
Таблица «Изготовляется» содержит информацию о производителях и изготовителях, количество и фасовка поставляемых ими товаров.
#Код Изготовителя – тип счетчик, первичный ключ, содержит уникальное значение без повторений.
Вес – тип текстовый, размер 15 символов, обязательное поле, маска ввод: ####,##" кг".
Артикул – длинное целое, тип числовой, обязательное поле, имеет маску ввод: \4#######. 4 представляет собой начальный номер овощей.
Вид фасовки – тип текстовый, размер 15 символов, не обязательное поле, допускаются совпадения.
Код Овощей – тип числовой, подстановка из таблицы «Овощи», обязательное поле, допускаются совпадения, связь по полю «Вид овощей».
Код Производителя – тип поля числовой, длинное целое, маска ввод, подстановка и таблицы «Производитель», обязательное поле.
Таблица «Категория овощей»: справочник производителей.
#Код Категории Овощей – тип счетчик, первичный ключ, содержит уникальные значения без повторений.
Название – название категории овощей, тип текстовый, размер 30 символов, обязательное поле без повторений, не индексированное.
Таблица «Менеджер» содержит информацию о менеджерах.
#Код Менеджера – тип счетчик, первичный ключ, содержит уникальное значение без повторений.
ФИО – тип текстовый, размер 50 символов, обязательное поле, индексированное поле (допускаются совпадения).
Телефон – тип поля текстовый, 11 символов, маска ввод: \(999") "999\-99\-99, необязательное поле, не индексированное.
Таблица «Поставка» содержит информацию о менеджере, количестве товара, дате поставки и тп.
Код Менеджера – тип числовой, подстановка из таблицы «Менеджер», обязательное поле, индексированное поле с совпадениями, отображается ФИО.
Цена за единицу – тип числовой, длинное целое, обязательное поле, формат поля: 000#.00 “грн”, не индексированное.
Дата поставки – тип дата-время, маска 00.00.0000;0;_, обязательное поле, не индексированное, условие на значение <=Now (), сообщение об ошибке «Дата не должна быть больше сегодняшней!» .
Количество - тип числовой, длинное целое, обязательное поле, не индексированное поле. Значение по умолчанию 1, значение об ошибке «Количество товара не может быть меньше 1», условие на значение >=1.
Код Изготовителя - тип числовой, обязательное поле, подстановка из таблицы «Изготовляется», связь по коду поля с подписью «Код Изготовителя», связь по полю «Изготовитель».
Таблица «Овощи»: справочник овощей.
#Код Овощей – тип счетчик, первичный ключ, содержит уникальные значения без повторений.
Вид Овощей – название вида, тип текстовый, размер 30 символов, обязательное поле без повторений, индексированное.
Код Категории Товара – тип числовой, длинное целое, подстановка из таблицы «Категории овощей», отображаются названия категории овощей, обязательное поле, совпадения не допускаются.