Анализ предметной области

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

2. Разработка схемы данных БД.На этом этапе рассматривается, из каких информационных объектов должна состоять БД, какими реквизитами описывается каждый объект. Затем определяется структура реляционных таблиц БД с указанием свойств полей и связей между таблицами.

3. Синтез компьютерной модели объекта,предполагающий выполнение следующих типовых операций:

3.1. Создание файла базы данных.

3.2. Создание исходной таблицы или таблиц.

3.3. Создание экранных форм.

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

3.4. Заполнение данными таблиц БД.

3.5. Работа с созданной базой данных:

  • сортировка, фильтрация и поиск записей в таблице;
  • отбор данных из таблиц в соответствии с заданными критериями отбора;
  • выполнение обработки данных (удаление, добавление, изменение данных, выполнение вычислений);
  • подготовка отчетов.

 

Рассмотрим подробно этап разработки схемы данных. Разработку схемы данных обычно выполняют в следующей последовательности:

1. Составляется общий список полей, отражающий реквизиты информационных объектов БД.

2. В соответствии с типом данных, размещаемых в каждом поле, определяют тип и другие свойства каждого поля.

3. Поля общего списка распределяются по базовым таблицам. Критерии распределения полей по таблицам могут быть различными. Например, сведения о сотрудниках организации могут храниться в одной таблице или могут быть созданы две таблицы, одна из которых хранит информацию служебного назначения (СОТРУДНИКИ), а другая – информацию личного плана (ЛИЧНЫЕ ДАННЫЕ) (рис. 10).

Рис. 10. Пример разделения одной таблицы на две по признаку разделения доступа к данным разных таблиц

 

Однако чаще критерием выделения таблицы является факт повторения данных в таблице. Например, в таблице СОТРУДНИКИ многократно повторяются названия должностей и оклады. Возможно, было бы целесообразно создать таблицу ДОЛЖНОСТИ, в которой хранить названия и характеристики должностей (рис.11). Тогда данные будут храниться в двух таблицах: например, это могут быть таблицы СОТРУДНИКИ_2 и ДОЛЖНОСТИ. В таблицу СОТРУДНИКИ_2 включен внешний ключ таблицы ДОЛЖНОСТИ – поле Код должности. По этому полю устанавливается связь между таблицами.

 

Рис. 11. Пример разделения одной таблицы на две по признаку устранения повторяемости данных

 

Обычно в каждой из таблиц намечают ключевое поле. В качестве ключевого выбирают поле, данные в котором повторяться не могут и которое однозначно определяет каждую запись таблицы. Например, для таблицы СОТРУДНИКИ_2 ключевым может быть поле, содержащее уникальный код каждого сотрудника (поле КодСотрудника).

Определяются связи между таблицами. На рисунке 12 показан пример установки связей между таблицами, составляющими одну базу данных. Такой чертеж называется схемой данных.

Рис. 12. Пример схемы данных

 

6. Разработкой схемы данных заканчивается «бумажный» этап работы проектирования базы данных. Далее следует этап компьютерной реализации базы данных, который в значительной мере определяется выбором конкретной СУБД для реализации базы данных.

 

13.4. Вопросы для самоконтроля

Что такое база данных (БД), система управления базами данных (СУБД)?

Что такое информационный объект?

Что такое модель данных?

Укажите основные понятия и характеристики иерархической и сетевой моделей данных.

Укажите характеристики и объекты обработки реляционной модели данных.

Что такое первичный ключ реляционной таблицы базы данных?

Что такое внешний ключ реляционной таблицы базы данных?

Какого типа связи (отношения) могут быть установлены между таблицами реляционной базы данных? Охарактеризуйте каждый тип связи.

Что такое «схема данных» реляционной базы данных?