Пример проектирования базы данных «СКЛАД»
Пусть имеется склад, на котором хранятся товары. Товары имеют определенное наименование и цену. Товары поступают на склад и уходят со склада. Проектируемая база данных должна позволять получать информацию о текущем состоянии склада, т.е. сведения о количестве и стоимости товаров на складе. В такой общей постановке задача перекрывает едва ли не половину реально используемых приложений СУБД. В качестве упрощения не будем учитывать «пересортицу», т.е. тот факт, что в реальности разные товары могут иметь одно наименование, и в то же время одни и те же товары могут иметь разные цены.
Кроме рассмотренной информации в проектируемой базе данных должны храниться сведения о внешних связях, например, о поставщиках и потребителях товаров.
В такой постановке задачи всю информацию удобно хранить в трех отдельных таблицах: сведения о товарах, информация о поставщиках и данные о потребителях.
Характеристики полей этих таблиц представлены в таблицах 1.1 – 1.3.
При вводе данных, очевидно, следует сначала заполнить таблицы «ПОКУПАТЕЛИ» и «ПОСТАВЩИКИ» для того, чтобы значения соответствующих полей в таблице «ТОВАРЫ» («Клиент» и «Поставщик») можно было взять уже из готовых таблиц.
Таблица 1.1 - Характеристики полей таблицы «ТОВАРЫ»
Имя поля | Тип данных | Длина поля | Примечание |
Номер | Счетчик | ||
Товар | Текстовый | Наименование товара (Ключевое поле) | |
Ед_изм | Текстовый | Единица измерения | |
Кол-во | Числовой | целое | Количество товара |
Цена | Денежный | Цена единицы товара | |
Поставщик | Текстовый | Краткое имя поставщика товара (поле связи с таблицей «ПОСТАВЩИКИ») | |
Клиент | Текстовый | Краткое имя покупателя товара (поле связи с таблицей «ПОКУПАТЕЛИ») | |
Годен до | Дата/Время | Срок годности товара | |
Сертификат | Логический | Наличие сертификата | |
Описание | МЕМО | Описание товара |
Таблица 1.2 - Характеристика полей таблицы «ПОКУПАТЕЛИ»
Имя поля | Тип данных | Длина поля | Примечание |
Клиент | Текстовый | Краткое имя покупателя товара (Ключевое поле) | |
Название | Текстовый | Полное наименование покупателя | |
Обращаться к | Текстовый | Лицо из фирмы «Покупатель», с которым осуществляется связь | |
Должность | Текстовый | Должность соответствующего лица | |
Адрес | Текстовый | Адрес покупателя |
Таблица 1.3 - Характеристика полей таблицы «ПОСТАВЩИКИ»
Имя поля | Тип данных | Длина поля | Примечание |
Поставщик | Текстовый | Краткое имя поставщика товара (Ключевое поле) | |
Название | Текстовый | Полное наименование поставщика | |
Телефон | Текстовый | Телефон поставщика | |
Адрес | Текстовый | Адрес поставщика |
СОЗДАНИЕ БАЗЫ ДАННЫХ
Создание таблиц
Начнем создание нашей информационно-справочной системы. При запуске ACCESS открывается диалоговое окно для определения режима работы
(рисунок 2.1).
Рисунок 2.1 - Диалоговое окно, открывающееся при запуске ACCESS
Сначала создадим новую базу данных:
qСоздать файлqНовая база данных Имя файла:=SKLADqСоздать,
после чего с помощью основного окна ACCESS База данных, приведенного на рисунке 1.3, будем создавать все остальные объекты.
Для создания таблиц выполняем следующую последовательность действий:
0 ТаблицыqСоздание таблицы в режиме конструктора
На экране при этом появляется пустой бланк характеристик полей БД, который мы должны заполнить.
Каждое поле обладает индивидуальными свойствами, задавая которые можно установить, как должны сохраняться, отображаться и обрабатываться данные. Набор свойств поля зависит от выбранного типа данных.
В таблице 2.1 приведено описание основных свойств полей.
Таблица 2.1 - Основные свойства полей базы данных
Свойство | Описание |
Размер поля | Определяет максимальную длину текстового или числового поля. При создании слишком большого размера неэкономно расходуется память, а при слишком маленьком размере может исказиться содержимое поля. |
Формат поля | Устанавливает формат отображения данных в форме или запросе. |
Число десятичных знаков | Определяет количество десятичных разрядов в дробной части десятичного числа. |
Подпись | Необязательная характеристика, содержащая надпись, которая выводится рядом с полем в форме или отчете. Эта надпись чаще всего содержит поясняющие сведения о поле. |
Значение по умолчанию | Содержит значение, устанавливаемое по умолчанию в соответствующем поле таблицы. |
Условие на значение | Определяет множество значений, которые пользователь может вводить в это поле. При вводе иного значения поле считается незаполненным и выдается сообщение об ошибке. |
Сообщение об ошибке | Определяет сообщение, которое появляется на экране, если введено значение, не входящее во множество допустимых значений. |
Обязательное поле | Установка, указывающая на то, что данное поле обязательно следует заполнить. |
Пустые строки | Установка, определяющая допуск наличия в данном поле пустых (незаполненных) строк. |
Индексированное поле | Определяет необходимость создания индексов для ускорения поиска по данному полю. |
Смысл всех этих свойств понятен (тем более что по каждой графе при ее заполнении выводится короткая справка), а назначение все они имеют одно и то же: предоставить ACCESS дополнительную информацию для лучшей работы с вашими данными, поэтому принцип заполнения очень прост: если вы знаете (или думаете, что знаете), как заполнить графу, то – заполняете, если нет – то оставьте незаполненной, ACCESS что-нибудь придумает сам.
После определения всех полей таблицы следует указать, по меньшей мере, одно поле для использования его в качестве первичного ключа (ключевое поле), что не позволит вводить в таблицу повторяющиеся записи, поскольку поле первичного ключа должно содержать однозначный идентификатор для каждой записи. Это поле не может содержать одинаковое значение для двух различных записей.
В разработанной таблице «ТОВАРЫ» с учетом упрощений, сделанных в разделе 1.4, первичным ключом выберем поле «Товар». Ключ задается с помощью команды
Ø Правка Ø Ключевое поле
или с помощью соответствующей кнопки (с изображением ключа) на панели инструментов.
Достаточно часто в качестве ключевого поля в БД используется поле типа Номер, т.к. по его свойствам значение такого поля повторяться не может.
Структура таблицы «ТОВАРЫ» показана на рисунке 2.2.
Рисунок 2.2 - Структура базы «ТОВАРЫ»
Созданную таблицу нужно сохранить, дав ей имя, с помощью команд:
Ø Файл Ø Сохранить Имя таблицы :=ТОВАРЫ
После завершения создания таблицы «ТОВАРЫ», точно так же создаем еще две таблицы: «ПОСТАВЩИКИ» и «ПОКУПАТЕЛИ», которые будут содержать информацию о внешних связях нашей БД.
Структура этих таблиц показана на рисунках 2.3 и 2.4.
Рисунок 2.3 - Структура таблицы «ПОСТАВЩИКИ»
Рисунок 2.4 - Структура таблицы «ПОКУПАТЕЛИ»