Основы проектирования баз данных
Перед созданием базы данных необходимо располагать описанием выбранной предметной области, которое должно охватывать реальные объекты и процессы, иметь всю необходимую информацию для удовлетворения предполагаемых запросов пользователя и определять потребности в обработке данных.
На основе такого описания на этапе проектирования базы данных определяется состав и структура данных, которые должны находиться в базе данных и обеспечивать выполнение необходимых запросов и решение задач пользователя.
Процесс проектирования и создания реляционной базы данных состоит из следующих этапов:
1) создание информационно – логической модели предметной области, т.е. выделение информационных объектов и определение связей между ними;
2) построение логической структуры реляционной базы данных, где каждый объект инфологической модели отображается реляционной таблицей, а связи между таблицами соответствуют выявленным информационным связям между объектами;
3) конструирование таблиц, соответствующих информационным объектам построенной модели данных;
4) создание схемы данных, в которой фиксируются существующие логические связи между таблицами;
5) ввод данных, содержащихся в документах предметной области.
Особый внимание следует уделить первым двум этапам, поскольку без их тщательной проработки невозможно создание БД, полностью удовлетворяющей потребностям пользователя.
Построение инфологической модели данных. Инфологическая модель (ИЛМ) отображает данные предметной области в виде совокупности информационных объектов и связей между ними.
Информационный объект – это информационное описание некоторого реального объекта, процесса или события. Информационный объект образуется совокупностью логически взаимосвязанных реквизитов, представляющих качественные и количественные характеристики некоторой сущности предметной области. Например, объект ТОВАР характеризуется такими реквизитами как наименование, единица измерения, изготовитель, сорт, цена и др.
Каждому информационному объекту присваивают уникальное имя, Например, при описании предметной области поставка товаров будут выделены такие объекты как ТОВАР, ПОСТАВЩИК.
Информационный объект имеет множество реализаций – экземпляров (записей). Например каждый экземпляр объекта ТОВАР представляет конкретный вид продукции. Экземпляр образуется совокупностью конкретных значений реквизитов и должен однозначно идентифицироваться значением ключа информационного объекта. Ключ может состоять из одного (простой) или нескольких ключевых реквизитов (составной).
При проектировании реляционной базы данных необходимо решить вопрос о наиболее эффективной структуре данных. При этом преследуются следующие цели:
- Обеспечить быстрый доступ к данным в таблицах.
- Исключить ненужное повторение данных, которое может являться причиной ошибок при вводе и нерационального использования дискового пространства компьютера.
- Обеспечить целостность данных таким образом, чтобы при изменении одних объектов автоматически происходило соответствующее изменение связанных с ним объектов.
Следующим шагом на этапе проектирования ИЛМ, после выявления информационных объектов, является определение отношений между ними.
Отношение – это связь между двумя таблицами, которая показывает, как относятся друг к другу данные в этих таблицах. При создании отношения указываются одинаковые поля в двух разных таблицах. Например, можно создать отношения между таблицами ТОВАР и ПОСТАВЩИК, используя в качестве связующего поля идентификатор товара.
ACCESS поддерживает следующие типы отношений между таблицами:
- одно – однозначные (1:1),
- одно – многозначные (1:М),
- много – многозначные (N:М).
Одно – однозначные связи (1:1) имеют место, когда каждому экземпляру одного объекта (А) соответствует только один экземпляр другого объекта (В) и, наоборот, каждому экземпляру объекта (В) соответствует только один экземпляр объекта (А).
Одно – многозначные связи (1:М) – это такие связи, когда каждому экземпляру одного объекта (А) может соответствовать несколько экземпляров объекта (В), а каждому экземпляру объекта (В) может соответствовать только один экземпляр объекта (А). В такой связи объект А является главным объектом, а объект В – подчиненным.
Много – многозначные (N:М) –имеют место в том случае, если каждому экземпляра объекта А может соответствовать несколько экземпляров объекта В и, наоборот, каждому экземпляру объекта В может соответствовать несколько экземпляров объекта А.Для реализации таких связей используется объект –«связка», который должен иметь идентификатор, образованный из идентификаторов объектов А и В.
В ИЛМ объекты размещены по уровням. На нулевом уровне размещаются объекты, не подчиненные другим объектам. Уровень остальных объектов определяется наиболее длинным путем к объекту от нулевого уровня. Такое размещение объектов дает представление об их иерархической подчиненности, делает модель более наглядной и облегчает понимание связей между объектами.
Построение логической модели базы данных.Логическая структура базы данных является адекватным отображением полученной инфологической модели. Каждый информационный объект модели данных отображается соответствующей реляционной таблицей. Структура таблицы определяется реквизитным составом объекта, где каждый столбец соответствует одному реквизиту. Строки таблицы соответствуют экземплярам объекта и формируются при загрузке таблицы.
Связи между объектами модели данных реализуются одинаковыми реквизитами – ключами связи в соответствующих таблицах. При этом ключом связи всегда должен быть идентификатор главного объекта.
Пример постановки задачи
В результате анализа задач по учету данных о продажах товаров выявлены документы – «источники данных» для создания таблиц справочной и учетной информации.
Документы справочной информации. Справочная информация содержится в документах: «Список товаров» и «Список покупателей». Ниже (рис.4 - 5). приведены формы справочных документов.
СПИСОК ТОВАРОВ
Наименование товара | Ед. измер. | Цена | Ставка НДС | Страна | Номер таможенной декларации |
Рис. 4 – Форма документа «Справочник товаров»
СПИСОК ПОКУПАТЕЛЕЙ
Наименование покупателя | Адрес | Р/счет | Идентификационный номер налогоплательщика |
Рис. 5 – Форма документа «Справочник покупателей»
Документы учетной информации. Учетная информация по продажам представлена в счете – фактуре (рис.6), содержащем перечень проданных товаров, а также сведения об оплате.
СЧЕТ-ФАКТУРА № от 20___ г. Покупатель:_____________________________Р/счет________________ Адрес: ______________________________________________________ ИНН: __________________ | ||||||||||
Наимено-вание товара | Ед. из-мер | Ко-ли-чест-во | Це-на | Стои-мость товара | Налоговая ставка | Сумма налога | Стоимость товара с НДС | Страна | №ГТД | |
Рис.6 – Форма бланка Счета-фактуры