Власкина-1
.pdf9.2. Этапы создания реляционной базы данных предприятия СКС и
туризма
С точки зрения конечного пользователя процесс создания базы данных можно представить в виде трех этапов:
инфологическое (концептуальное) описание баз данных;
логическое проектирование баз данных;
физическое проектирование баз данных.
Инфологическое, или концептуальное, описание. Исходными данными для осуществления инфологического проектирования базы данных является словесная и документальная характеристика предметной области, которая может быть получена в результате предварительного (предпроектного)
исследования. Разработка концептуальной модели предметной области основана на анализе информационных потребностей конечных пользователей и тех требований, которые они предъявляют к создаваемой базе данных.
На этом этапе прежде всего решается вопрос о том, какие данные должны храниться в базе и какого типа информационные выборки и отчеты могут потребоваться пользователю БД. Мифологическая (концептуальная)
модель предметной области обычно представляется в виде графической схемы, на которой показан состав и взаимосвязи хранимых данных. В
процессе работы инфо-логическая модель может дополняться новыми данными в связи с , изменяющимися потребностями пользователя.
Логическое проектирование. На этом этапе осуществляется выбор подходящей системы управления базами данных и представление инфологической модели предметной области в форме структуры базы данных конкретной СУБД. Для реляционных баз дан- i ных на этом этапе производится описание структуры каждой таблицы и их взаимосвязей.
Физическое проектирование. Оно предполагает определение способов и мест размещения базы данных, оценку ее объема и других параметров.
221
9.3. Типы информационных связей в моделях данных
При построении инфологических моделей предметной области используется понятие информационных связей между отдельными реквизитами. Существует четыре основных типа информацион- \ ных связей:
Рис. 9.1. Связь «один-к-одному»
1) «один-к-одному». Такая связь означает, что каждому значению реквизита Л соответствует одно и только одно значение связанного с ним реквизита В, и наоборот. Например, каждому значению реквизита Номер паспорта соответствует единственное зна-1 чение реквизита ФИО гражданина страны, и наоборот. Такую связь обозначают 1:1, графически в инфологических моделях эта связь изображается одинарными стрелками
(рис. 9.1).
Рис. 9.2. Связь «один-ко-многим»
2) «один-ко-многим». Эта связь означает, что каждому значению реквизита А соответствует ноль, одно или несколько значений связанного с ним реквизита В, а каждому значению реквизита В соответствует одно и только одно значение реквизита А. Например, для аэропорта, из которого осуществляется множество рейсов, характерна следующая связь между описывающими этот объект реквизитами: одному значению реквизита
Название аэропорта вылета соответствует несколько значений реквизита
Номер рейса, а каждому значению Номер рейса соответствует только одно
Название аэропорта вылета. Такую связь обозначают 1: М, графически связь изображается одинарной стрелкой со стороны «один» и двойной — со стороны «много» (рис. 9.2).
3) «многие-к-одному». Эта связь интерпретируется как обратная к связи «один-ко многим».
222
4) «многие-ко-многим». Такая связь означает, что каждому значению реквизита А соответствует несколько значений связанного с ним реквизита В,
и наоборот. Например, турагентство может работать с несколькими туроператорами, а туроператор обычно имеет разветвленную сеть турагентов. Такую связь обозначают М: М, а графически изображают двойными стрелками (рис. 9.3).
Аналогичные связи могут быть установлены в БД между реляционными таблицами и практически реализованы за счет наличия в них общих полей (реквизитов). Если общих полей в связываемых таблицах нет,
то нужно сделать следующее:
если между реляционными таблицами существует связь 1:1 или 1: М,
то следует скопировать поле, по которому устанавливается связь, из одной связываемой таблицы в другую;
Рис. 9.3. Связь «многие-ко-многим»
если между реляционными таблицами существует связь М: М, то следует создать новую таблицу и включить в нее ключевые поля связываемых таблиц.
9.4. Создание базы данных для предприятия СКС и туризма
При создании базы данных для предприятий социально-культурной сферы и туризма одним из первостепенных вопросов является определение тех данных, которые необходимо хранить и обрабатывать в информационной базе. Основным источником получения такого рода информации является словесное описание функциональных задач, решаемых на каждом рабочем месте, и анализ обрабатываемой документации с указанием конкретных реквизитов. Другими словами, необходимо рассмотреть все щ формационные бизнес-процессы, реализуемые на данном объекте, а также провести анализ
223
информационных потребностей каждого конечного пользователя БД. Такой подход носит название функционального {процессного). При таком подходе структура БД зависит от глубины проработки основных бизнес-процессов щ полноты выявления информационных потребностей конечных пользователей.
Кроме этого, существует объектный подход к построению базы данных, который основан на выявлении типовых сущностей предметной области, унификации и обобщении их свойств, типизации перечня и информационных потребностей конечных пользователей. Такой подход позволяет сформировать типовые информационно-логические модели,
например для гостиницы, турфирмы, музея, которые затем адаптируются к условиям конкретного предприятия. В этом случае существует обычно некоторая избыточность базовой информационно-логической модели предметной области, и в то же время некоторые уникальные бизнес-
процессы могут быть не учтены.
. Для формализованного представления информационно-логической модели предметной области используется так называемая модель «сущность-
связь», разработанная П.Ченом в 1976 г. Описание предметной области осуществляется в виде схем, на которых с помощью графических объектов представлены информационные объекты, описывающие их реквизиты и связи между ними. Достоинством такого подхода является наглядность получаемых моделей и возможность формализации всего процесса построения информационных моделей.
Информационные объекты (или сущности) представляют собой информационное описание с помощью набора реквизитов отдельных реальных объектов, процессов, явлений или событий конкретной предметной области, информация о которых должна сохраняться и быть доступна в БД.
На схемах информационно-логической модели информационные объекты изображаются в виде прямоугольников.
224
Рассмотрим пример построения информационно-логической модели для туристской фирмы. Предположим, что турфирма реализует туры по различным направлениям (странам), и по каждому направлению работает конкретный менеджер. При этом некоторые менеджеры могут обслуживать несколько направлений. В базе данных необходимо хранить и обрабатывать информацию по турам, странам, менеджерам. В результате предпроектного обследования был определен перечень тех реквизитов, которые необходимо хранить в базе данных: код тура, наименование тура, продолжительность тура, цена тура, код страны, название страны, виза (нужна или нет), валюта страны, код менеджера, ФИО менеджера, телефон менеджера.
Сформулированы следующие основные условия: в одну страну может быть несколько туров, но каждый тур предусматривает посещение только одной страны; один менеджер курирует несколько туров, но каждый тур имеет только одного менеджера-куратора.
Построение информационно-логической модели начинается с анализа взаимосвязей между реквизитами, выявления информационных объектов и определения ключей. Анализ взаимосвязей между реквизитами позволяет установить, что каждому коду тура соответствуют уникальное название тура,
конкретная продолжительность и цена. Для кода страны можно установить взаимнооднозначное соответствие с названием страны, визовой поддержкой и валютой страны. Аналогично конкретному коду менеджера соответствуют ФИО менеджера и его телефон. Существующие взаимосвязи между реквизитами можно представить в виде следующей схемы:
Здесь можно выделить три информационных объекта и назвать их ТУР,
СТРАНА, МЕНЕДЖЕР.
Для каждого информационного объекта выделяются ключи, т. е. те реквизиты, которые однозначно идентифицируют записи. Например, для информационного объекта ТУР уникальными (неповторяющимися) являются реквизиты: код тура и название тура. № тот, и другой реквизит однозначно идентифицирует конкретный тур, который может быть выбран в качестве
225
ключевого. Однаков целях оптимизации размера базы данных и удобства работы с ней в качестве ключа обычно выбираются кодовые реквизиты.
Таким образом, ключами для выделенных информационных объектов будут соответственно код тура, код страны и код менеджера. При описании модели принято ключевые поля подчеркивать.
Таким образом, структурирование данных предметной области позволило выделить три информационных объекта и описываю щие их реквизиты:
ТУР (код тура, наименование тура, продолжительность тур цена тура);
СТРАНА (код страны, название страны, виза, валюта страны);
МЕНЕДЖЕР (код менеджера. ФИО менеджера, телефон менеджера).
Далее необходимо установить взаимосвязи между отдельными информационными объектами, что осуществляется путем анализа типов связей между ключами с учетом сформулированных ранее условий описания предметной области.
Связь между информационными объектами СТРАНА и ТУР имеет тип
«один-ко-многим» (СТРАНА <->> ТУР). Это следует из| того, что по условию в одну страну может быть несколько туров, но каждый тур предусматривает посещение только одной страны. Между информационными объектами МЕНЕДЖЕР и ТУР также имеет место тип связи «один-ко-многим» (МЕНЕДЖЕР-*—>> ТУР), так как по условию один менеджер курирует несколько туров, но каждый тур имеет только одного менеджера-куратора.
Для реализации установленных взаимосвязей необходимо в информационный объект ТУР добавить ключевые поля из связываемых сущностей МЕНЕДЖЕР и СТРАНА. Тогда описывающие •информационный объект реквизиты будут следующие: ТУР (код тура, наименование тура,
продолжительность тура, цена тура, код страны, код менеджера).
Графически информационную модель можно представить в виде следующей схемы (рис. 9.4).
226
Рис. 9.4. Информационно-логическая модель «Турфирма» Переход от информационно-логической модели к реляционным
таблицам производится следующим образом:
1.Каждый информационный объект представляется отдельной таблицей.
2.Реквизиты информационных объектов являются полями реляционных таблиц.
3.Ключи информационных объектов становятся ключами таблиц.
Для рассматриваемой предметной области примеры исходных значений приведены в табл. 9.1, 9.2, 9.3.
,Таблица 9.1
Страна
Код страны |
Название |
Виза |
Валюта |
CYP |
Кипр |
Нет |
кипр фунты |
FR |
Франция |
Да |
франки |
RUS |
Россия |
Нет |
рубли |
UK |
Англия |
Да |
фунты |
USA |
США |
Да |
доллары |
Таблица 9.2 Тур |
|
|
|
|
|
|
К |
Название |
Продолжительн |
|
Ц |
Код |
К |
од |
тура |
ость тура, дни |
ена |
|
менеджера |
од |
тура |
|
|
тура, |
|
|
страны |
227
|
|
|
долл. |
|
|
C |
«Отдых» |
14 |
8 |
М-2 |
C |
YP-1 |
|
|
10 |
|
YP |
C |
«Обучение» |
14 |
1 |
М-2 |
C |
YP-2 |
|
|
000 |
|
YP |
F |
«Экскурсия в |
7 |
7 |
М-4 |
F |
R-1 |
Париж» |
|
80 |
|
R |
F |
«Рождество в |
7 |
9 |
М-4 |
F |
R-2 |
Париже» |
|
20 |
|
R |
F |
«Обучение» |
10 |
1 |
М-4 |
F |
R-3 |
|
|
800 |
|
R |
R |
«Сочи» |
15 |
4 |
М-3 |
R |
US-1 |
|
|
00 |
|
US |
R |
«Золотое |
14 |
1 |
М-3 |
R |
US-2 кольцо» |
|
50 |
|
US |
|
R |
«Сибирь» |
25 |
3 |
М-3 |
R |
US-3 |
|
|
00 |
|
US |
U |
«Обучение» |
15 |
2 |
М-1 |
U |
K-1 |
|
|
100 |
|
K |
U |
«Экскурсия в |
7 |
6 |
М-1 |
U |
228
K-2 |
Лондон» |
|
90 |
|
K |
U |
«Диснейленд |
5 |
1 |
М-1 |
U |
SA-1 |
» |
|
200 |
|
SA |
U |
«Долина |
5 |
9 |
М-1 |
U |
SA-2 Смерти» |
|
00 |
|
SA |
|
U |
«Отдых» |
14 |
3 |
М-1 |
U |
SA-3 |
|
|
000 |
|
SA |
U |
«Обучение» |
10 |
1 |
М-1 |
U |
SA-4 |
|
|
500 |
|
SA |
Таблица 9.3
|
Менеджер |
|
Код менеджера |
ФИО |
Телефон |
М-1 |
Иванов В.А. |
123-45-67 |
М-2 |
Орлова СТ. |
456-87-12 |
М-3 |
Соколов Л.Д. |
457-87-45 |
229
М-4 |
Мельник О.В. |
324-54-00 |
9.5. Реализация базы данных «Турфирма» средствами СУБД Access
База данных в Microsoft Access представляет собой файл с расширением .mdb. Создание новой базы данных осуществляется в следующей последовательности (рис. 9.5). В главном меню Access в пункте
Файл необходимо выбрать пункт Создать, затем в диалоговом окне
Создание на вкладке Общие выбрать пункт База данных, потом указать диск и папку, в которой будет храниться новый файл БД, затем следует ввести имя файла базы данных и нажать кнопку Создать. На экране появится диалоговое окно.
Microsoft Access позволяет создавать таблицы тремя способами:
в режиме конструктора;
с помощью мастера;
Рис. 9.5. Создание таблицы Microsoft Access
путем ввода данных.
Первый способ предоставляет широкие возможности по конструированию таблиц с указанием различных параметров и условий для
230