Проектирование баз данных

Проектирование БД включает:

1. анализ предметной области;

2. логическое проектирование.

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

Первым этапом проектирования БД является анализ предметной области. На данном этапе анализируются запросы пользователей, выбираются информационные объекты и их атрибуты. Анализ предметной области обычно проходит в три этапа:

1) анализ концептуальных требований и информационных потребностей;

2) выявление информационных объектов и связей между ними;

3) построение концептуальной модели предметной области и проектирование концептуальной схемы БД.

6.4.1.1. Анализ концептуальных требований и информационных потребностей

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

Сколько студентов учится в вузе? Сколько факультетов в вузе? Какие формы обучения на каждом факультете? Сколько студентов на каждом факультете и курсе по каждой форме обучения? Сколько специальностей на каждом факультете? Сколько дисциплин читается на каждом курсе по каждой специальности и форме обучения? Сколько преподавателей в вузе? Как часто обновляется информация в БД? Сколько лекционных аудиторий и аудиторий для проведения семинарских и практических занятий? Сколько раз в день, сколько человек и кто пользуется БД?

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

6.4.1.2. Выявление информационных объектов и связей между ними

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

Проиллюстрируем выявление информационных объектов и связей между ними опять на примере БД для учета студентов вуза.

Объект – студент.

Атрибуты – номер, фамилия, имя, отчество, дата рождения, пол, факультет, специальность, отделение, год поступления, курс.

Объект сессия.

Атрибуты – номер, оценка 1, оценка 2, оценка 3 и т.д.

Объект стипендия.

Атрибуты – номер, результат, вид, сумма, надбавки.

Объект – преподаватель.

Атрибуты – код преподавателя, фамилия, имя, отчество, научная степень, звание, год рождения, факультет, кафедра.

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

1. Значение атрибута "пол" может принимать значение либо "мужской" либо "женский".

2. Значение атрибута "специальность" может принимать значение либо 060400, либо 021100.

3. Значение атрибута "отделение" может принимать значение либо "очное", либо "заочное".

4. Значение атрибута "курс" может изменяться от 1 до 6 (с учетом магистратуры).

6.4.1.3. Типы связей

Все информационные объекты предметной области, каким-то образом соотносятся друг с другом, т.е. связаны друг с другом. Различают следующие типы связей:

1. один к одному (1: 1);

2. один ко многим (1: М);

3. многие ко многим (М: М).

Связь один к одному (1: 1) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует не более одного экземпляра информационного объекта Б и наоборот, например, связь между объектами Студент и Стипендия, где каждый студент имеет определенный набор оценок в каждую сессию, т.е.

Студент ↔ Стипендия.

Связь один ко многим (1: М) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует 0 и более экземпляров объекта Б, но каждый экземпляр объекта Б связан не более чем с одним экземпляром объекта А, например, связь между объектами Стипендия и сессия, где установленный размер стипендии по результатам сдачи сессии может повторяться для различных студентов, т.е.

Стипендия ‹ — ›› сессия

Связь многие ко многим (М: М) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует 0 и более экземпляров объекта Б, и наоборот, например, связь между объектами Студент и преподаватель, т.к. один студент обучается у многих преподавателей и один преподаватель обучает многих студентов, т.е. Студент ‹‹ — ›› преподаватель.

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

Концептуальная модель или информационная структура БД включает описание информационных объектов и их взаимосвязей в рассматриваемой предметной области.

Концептуальная модель применяется для структурирования предметной области с точки зрения и с учетом информационных интересов пользователя и не зависит от программного обеспечения СУБД.

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

Одной из самых распространенных моделей концептуальной схемы является модель "сущность – связь". Основными элементами данной модели являются сущности и связи. В качестве сущности могут выступать место, предмет, личность, явление. Так, для БД "Успеваемость" сущность (объект) – студент, а экземпляр сущности конкретный объект – Петров П.П.

6.4.2. Логическое проектирование

Основной задачей логического проектирования является разработка логической схемы, ориентированной на выбранную СУБД. Этот этап проектирования БД полностью ориентирован на инструментальные средства компьютера в отличие от анализа предметной области.

Этап логического проектирования включает:

Ø выбор конкретной СУБД;

Ø отображение концептуальной схемы на логическую схему;

Ø выбор ключей;

Ø описание языка запросов.

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

6.5. Система управления базами данных Microsoft Access [1]

СУБД MS Access включает следующие объекты:

1. Таблицы.

2. Формы.

3. Запросы.

4. Отчеты.

5. Страницы.

6. Макросы.

7. Модули.

Первые четыре объекта – таблицы, формы, запросы и отчеты являются основными, поэтому внимании[[[е в данном учебном пособие будет уделено именно им.

Создание БД и работа с ней с помощью СУБД Access будем рассматривать на примере создания учебной БД "Успеваемость".

6.5.1. Запуск СУБД MS Access

Запуск СУБД MS Access осуществляется стандартно, как и любого Windows приложения. Запуск MS Access можно осуществить либо из пункта " Программы " или из раздела " Microsoft Office " пункта " Программы " главного меню Windows (кнопка " Пуск "), либо с помощью ярлыка на рабочем столе (рис.6.5).

Рис.6. 5. Формы запуска MS Access

Запустить MS Access.

После запуска MS Access у Вас должна появиться на экране картинка аналогичная рис.6.6.

Рис.6. 6. Интерфейс MS Access после запуска программы

В открывшемся окне слева (как на рис.6.6) или справа находится панель создания файла БД (если панель отсутствует, следует щелкнуть инструмент " Создать " в левом верхнем углу экрана на стандартной панели инструментов).

Программно БД MS Access находится в одном файле с расширением " .mdb", поэтому если необходимо открыть или создать БД, то следует, прежде всего, открыть или создать файл БД MS Access. На панели создания файла находится несколько разделов, которые позволяют открыть существующий файл БД (верхний раздел) и создать файл (нижние разделы).

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

Отдать команду " Создание ", " Новая база данных ".

В результате выполнения команды " Создание ", " Новая база данных " на экране появляется стандартное диалоговое окно создания и сохранения файла (рис.6.7).

Рис.6. 7. Диалоговое окно создание файла БД MS Access

По умолчанию файл обычно имеет имя " db1 " и сохраняется в папке " Мои документ ы". В диалоговом окне создания файла следует задать его имя (внизу окна) и папку хранения (вверху окна). После ввода имени файла и указания папки его местонахождения следует щелкнуть кнопку " Создать ".

Создать файл БД с именем – " Успеваемость ". Файл должен находится в папке

" Мои документы " (рис.6.7).

В результате на экране появляется главное меню MS Access (рис.6.8), где слева приводятся главные объекты СУБД MS Access, а вверху операции работы с ними (создать, открыть и конструктор – изменение).

Рис.6.8. Главное меню СУБД MS Access

6.5.2. Создание таблиц

Основу реляционных БД составляют таблицы, которые по существу и являются БД. Создание таблиц можно осуществлять тремя способами (рис.6.9):

Ø в режиме конструктора;

Ø с помощью мастера;

Ø путем ввода данных.

Прежде чем разбирать достоинства каждого способа следует сказать несколько слов о полезных помощниках MS Access.

Помощники MS Access

В MS Access имеется целый ряд полезных помощников. Все они предназначены для облегчения работы с СУБД. Среди них можно выделить:

Ø карточки подсказки;

Ø мастера;

Ø конструкторы.

Карточки подсказки

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

Рис.6.9. Карточки подсказки

Мастера

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

Конструкторы

Конструктор MS Access - это инструмент аналогичный Мастеру и предназначенный для выполнения конкретной операции. В отличие от Мастера здесь не происходит диалог между пользователем и MS Access посредством диалоговых окон. Подразумевается, что пользователь знает, как выполнить то или иное действие для достижения определенного результата. Выбор между режимами Мастера и Конструктора происходит на основе простоты технологического процесса достижения поставленной цели.

Учитывая вышеизложенное, рассмотрим способы создания таблиц с помощью мастера и конструктора. Этапу создания таблиц с помощью СУБД MS Access предшествуют этапы анализа предметной области и логического проектирования, где определяется вид создаваемой таблицы (количество полей и их названия), и на этапе работы с СУБД MS Access пользователь уже предварительно знает, какие поля должны быть в таблице. Поэтому, в данном случае, лучше выбрать режим Конструктора. Если пользователь сомневается в выборе полей или их достаточности, то лучше использовать режим Мастера.

6.5.2.1. Режим Мастера

Режим Мастера вызывается (рис.6.10) либо непосредственно двойным щелчком на режиме "Создание таблицы с помощью мастера", либо выбором этого варианта одним щелчком, затем щелчок на кнопе "Создать" (рис.6.10, п.а) и затем в окне "новая таблица" выбор режима "Мастер таблиц" и щелчок на кнопке "Ок" (рис.6.10, п.б).

А б

Рис.6.10. Вызов Мастера таблиц

В результате проделанных операций Мастер таблиц открывает диалоговое окно по созданию таблиц (рис.6.11)

Рис.6.11. Начальное диалоговое окно Мастера создания таблиц

На первом этапе создания таблиц Мастер предлагает выбрать категорию (деловые или личные) и образец таблицы (список рассылки, контакты, клиенты и т.д. из соответствующего списка), а также образцы тех полей, которые требуются пользователю. Поля задаются с помощью кнопок и , которые соответственно позволяют выбрать одно поле или все поля. Обратные кнопки отменяют соответствующий выбор. Выбранные поля появляются в окне "Поля новой таблицы" (рис.6.12). Следует отметить, что отдельные выбранные поля можно переименовать с помощью кнопки "Переименовать поле…".

Выбрать категорию "Деловые", таблицу "Студенты", поля: "Код Студента",

"Имя", "Отчество", "Фамилия", "Адрес", "Номер Телефона", "Специализация" и переименовать поле "Специализация" в "Специальность" (рис.6.12).

Рис.6.12. Выбор категории, образца таблицы и требуемых полей с помощью Мастера создания таблиц

Для перехода на следующий шаг по созданию таблицы следует щелкнуть кнопку " Далее ".

Щелкнуть кнопку " Далее "

На следующем шаге пользователь определяет название таблицы (по умолчанию стандартное, в нашем случае " Студенты ") и режим выбора ключевого поля (автоматический или определяемый пользователем) (рис.6.13). В случае выбора автоматического режима СУБД MS Access выбирает либо первое поле, либо поле, имеющее тип " Счетчик ". При выборе режима "Пользователь определяет ключ самостоятельно" пользователь задает как ключевое поле, так и тип кодирования каждой записи (последовательные числа, автоматически присваиваемые каждой записи, числа, вводимые пользователем при добавлении новых записей и сочетание чисел и букв при добавлении новых записей). Причем выбрать ключевое поле можно из списка полей (рис.6.14, 6.15).

Задать имя таблицы "Студенты" и ключевое поле "Код Студента". Перейти на

следующий шаг создания таблицы.

На следующем (завершающем) шаге создания таблицы выбирается вариант последующих действий (рис.6.16). Это может быть переход в режим Конструктора (команда "Изменить структуру таблицы") для изменения стандартного набора поле и их ограничений, либо переход в режим заполнения таблицы конкретными данными, либо заполнение таблицы с помощью специальной формы. Так как режим Конструктора и режим заполнения таблицы с помощью Формы подразумевают использование еще неизученных объектов MS Access, то мы остановимся на выборе второго режима, т.е. переход в режим "Ввести данные непосредственно в таблицу" (рис.6.16)

Выбрать режим "Ввести данные непосредственно в таблицу" и щелкнуть

кнопку "Готово".

В результате выполнения задания у Вас на экране появится картинка, приведенная на рис.6.17.

Рис.6.17. Ввод данных в таблицу "Студенты"


Рис.6.13. Задание имени таблицы и режима выбора ключевого поля

Рис.6.14. Задание ключевого поля

Рис.6.15. Задание ключевого поля

Рис.6.16. Варианты последующих действий


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: