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



Первый этап проектирования

В задании речь идет о фирмах, которые осуществляют поставку комплектующих, и магазинах, которые эти комплектующие потребляют. Поэтому данные группируем в виде следующих классов с именами: ФИРМА, КОМПЛЕК-ТУЮЩИЕ ИЗДЕЛИЯ, МАГАЗИН и соединим их типами связей с именами ПОСТ., ПОТРЕБ. Запишем эти имена в одну строку, как это показано на рис. 4. Из задания следует, что нужно хранить значения атрибутов со следующими именами:

• для класса ФИРМА – н_фир (название фирмы), а_фир (адрес), тлф_п (телефон приемной);

• для класса КомпИЗД. – н_изд (название изделия), страна- производитель, ЦЕНА.

• для класса МАГАЗИН – н_маг (название магазина), тлф_д (телефон директора), а_маг (адрес магазина).

Очевидно, что из этих атрибутов ключевыми будут соответственно н_фир , н_изд, н_маг. В соответствии со своим индивидуальным заданием запишем значения ключевых атрибутов под именами своих классов и укажем линиями связи, какая фирма что поставляет и какой магазин что потребляет. Например, рассмотрим вариант 55 индивидуального задания. В соответствии с пятой строкой вариантов поставок комплектующих фирмами-поставщиками под именем класса ФИРМА записываем значение ключевого атрибута “Intel”, а под именем класса КомпИЗД записываем с_плат. Соединяем эти два значения ключевых атрибутов линией связи. Так же поступаем со значениями «Seagate» и з_крт и т.д.

Затем рассмотрим пятую строку потребности магазинов в комплектующих. Под именем класса МАГАЗИН записываем «Прайм» и «Твой звук»и соединяем их двумя линиями связи с с_плат под именем класса КомпИЗД и т. д. в соответствии с рис. 4.

 

ФИРМА ПОСТ КомпИЗД ПОТРЕБ МАГАЗИН
«Intel»   с_плат   «Твой звук»
«Seagate»   з_крт   «Прайм»
«Samsung»   мон   «Вист»
«AMD»   проц   «Криста»
«Matrox»   в_кар   «МегаБит»
    CD    
    DVD    

 

Рис. 4

Из диаграммы видно, что одна фирма «Matrox» поставляет в_кар, CD и DVD. Следовательно, степень связи ПОСТ 1:N. Все объекты классов ФИРМА, КомпИЗД участвуют в связи (соединены линиями связи). Следовательно, их виды принадлежности обязательные по отношению к типу связи ПОСТ.

Магазин «Прайм» потребляет с_плат и в_кар, магазин «Вист» потребляет с_плат и з_кар, а с_плат необходимы трем магазинам (см. рис. 4). Следовательно, степень связи ПОТРЕБ N:M. Все объекты класса ФИРМА участвуют в связи. Значит, вид принадлежности класса ФИРМА – обязательный. У класса КомпИЗД имеются экземпляры, не участвующие в связи (проц, DVD). Значит, вид принадлежности класса КомпИЗД по отношению к типу связи ПОТРЕБ – необязательный. В некоторых вариантах значения ключевых атрибутов класса ФИРМА могут повториться в одной строке поставок. В этом случае это значение повторно записывать не следует, а линию связи нужно провести к уже имеющемуся значению. Это будет означать, что две фирмы изготавливают одинаковые комплектующие изделия. Если в строке потребностей магазинов появится название комплектующего изделия, которого нет под именем класса КомпИЗД, то это название следует добавить в имеющуюся совокупность этой класса. Над каждой линией связи, которая указывает на сам факт связи, укажем характеристику связи В данном случае это количественная характеристика связи – сколько производится и сколько потребляется комплектующих изделий. В результате получится диаграмма объектов классов и объектов связей между ними, показанная на рис. 4. Теперь можно перейти к построению концептуальной схемы:

 

 

 


Рис. 5

 

Второй этап проектирования

 

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

ФИРМА

 

ПОТРЕБ

н_фир

тлф_п

а_фир

 

н_маг

н_изд

потреб

Intel

12-56

ул. Мира, 4

 

Твой звук

с_плат

100

Seagate

32-89

ул. Усиевича, 12

 

Прайм

в_карт

71

Samsung

34-50

ул. Малая, 1

 

Вист

з_карт

40

AMD

45-10

ул. Казахская, 3

 

Криста

CD

140

Matrox

23-00

ул. Д. Бедного, 2

 

МегаБит

монитор

87

 

Прайм

с_плат

130

Вист

с_плат

200

 

КомпИЗД

 

 

МАГАЗИН

н_изд с_произ ЦЕНА (руб)

н_фир

пост

 

н_маг

тлф_д

а_маг

с_плат Китай 3045

Intel

400

 

Твой звук

32-10

ул. Мира, 4

з_карт Сингапур 890

Seagate

450

 

Прайм

33-01

ул. Землячки, 1

монитор Корея 5689

Samsung

200

 

Вист

43-00

ул. Ленина, 78

в_карт Китай 1200

AMD

300

 

Криста

23-98

ул. Елецкая,

проц Англия 2400

Matrox

250

 

МегаБит

98-90

ул. Маркса, 62

CD Корея 1500

Matrox

320

 

 

DVD Япония 1854

Matrox

350

 

                           

 

Рис. 6

 

Реализация в MS Access

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

 

Чтобы создать файл новой базы данных (пока пустой), необходимо после запуска программы Access 2000 в диалоговом окне, показанном на рис. 7, щелкнуть мышью на опции Новая база данных и нажать кнопку ОК. На экране появится диалоговое окно Файл новой базы данных. При необходимости выберите нужные имена каталога и диска, где будет храниться создаваемый файл базы данных. Щелкните мышью в поле ввода Имя файла и введите имя УЧЕТ ИЗД. с клавиатуры без расширения. Расширение *.mdb будет добавлено программой Access автоматически. Щелкните на кнопке ОК. Появится окно базы данных СКЛАД (рис. 8). В рабочей области окна базы данных (выделена белым цветом) отображаются имена объектов базы данных. Тип отображаемых объектов соответствует нажатой кнопке в колонке Объекты. Например, при нажатой кнопке Таблицы в окне базы данных отображаются имена таблиц. Так как в нашем случае создается новая база данных, то никаких имен объектов в окне базы данных пока нет.

Выше рабочей области окна базы данных находится строка с инструментами, предназначенными для работы с объектами.

 

 

Рис. 8

 

Инструменты Открыть, Конструктор, Создать будут рассмотрены ниже. Инструмент в виде креста служит для удаления выделенного щелчком мыши объекта. Осуществляя щелчок мыши на одной из остальных четырех кнопок панелей инструментов, можно выбрать вид представления объектов в рабочей области окна базы данных: в виде крупных или мелких значков, в виде списка или в виде таблицы.

Открытие файла базы данных

Перед началом любой работы с базой данных нужно открыть тот файл, в котором содержится эта база данных. Для открытия файла базы данных следует запустить программу Access. Затем в окне, показанном на рис. 7, следует выбрать из списка файл с вашей базой данных. Если нужного файла в списке не окажется, то нужно выбрать пункт Другие файлы. Появится окно Открытие файла базы данных, в котором следует указать диск, каталог, где находится файл базы данных, и открыть его. Об успешном открытии файла базы данных будет свидетельствовать появление окна базы данных (см. рис. 8), в котором содержатся созданные объекты.

Существует и другой способ открытия файла базы данных без использования окна, показанного на рис. 7. Этот способ состоит в следующем. После запуска программы Access закроем окно, показанное на рис. 7, нажав кнопку Отмена. Затем следует щелкнуть на слове меню Файл. Появится список из пунктов меню (команд), в нижней части которого выведены последние 4 имени файлов баз данных, с которыми проводилась работа. Если нужное имя в этом списке имеется, нужно на нем щелкнуть мышью. Появится окно базы данных, показанное на рис. 8.

Если нужного имени среди пунктов меню Файл  нет, следует щелкнуть мышью на пункте меню Открыть. Появится окно Открытие файла базы данных В этом окне следует выбрать папку, где хранится нужный файл, выделить его щелчком мыши и нажать кнопку Открыть Появится окно базы данных, приведенное на рис. 8.

 

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

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

Таблицы создаются в два этапа. Сначала вводится структура таблицы, а затем она заполняется данными.

Ввод структуры таблиц

 

Ввод структуры таблицы – это создание «шапки» таблицы, то есть ввод следующих параметров поля:

• имя поля;

• тип поля, т.е. тип данных, для хранения которых создается поле;

• свойства поля.

Типы и свойства полей в Access будут рассмотрены ниже. Изменение типа и свойств поля после ввода данных в таблицу не рекомендуется, так как это может привести к потере или искажению данных. Для определенности введем структуру конкретной таблицы Фирма (рис. 9) с именами и типами полей, показанными в табл. 2

Таблица 1

 

Рис. 9

 

Для создания полей таблицы следует:

· открыть файл созданной ранее базы данных. Появится окно, показанное на рис. 8;

· щелкнуть на кнопке Таблица, а затем на кнопке Создать. Появится окно Новая таблица;

· в окне Новая таблица щелкнуть по кнопке Конструктор и нажать ОК.

Появится пустое окно конструктора таблиц. В строке заголовка окна конструктора таблиц написано: Таблица, Таблица1, где Таблица1 – имя новой таблицы, присвоенное ей автоматически, которое в дальнейшем вы можете изменить. Пустое окно конструктора таблиц можно открыть и по-другому. Для этого в открытом окне ранее созданной базы данных нужно щелкнуть по ярлыку Создание таблицы в режиме конструктора.

Окно конструктора таблиц состоит из двух частей – верхней и нижней. В нижней части окна в графу Поле вводятся имена полей, в графу Тип данных – вводится тип данных, в графу Описание вводятся комментарии и объяснения для пользователя. В нижней части таблицы автоматически выводится список свойств поля, выделенной строки таблицы (рис. 10).

 

 

Рис. 10

На рис. 10 показано окно конструктора таблиц с уже введенной структурой таблицы ФИРМА. Рассмотрим последовательность работы по созданию полей таблицы. Сначала вводится имя поля в первой строке таблицы. Для этого щелкаем левой клавишей мыши в первой строке в графе Поле конструктора таблиц. В крайней левой колонке таблицы появляется черный треугольник, указывающий, что эта строка конструктора в данный момент является активной. Затем с клавиатуры вводится имя поля. Имя поля в Access должно соответствовать следующим правилам: имя поля может быть любой комбинацией букв и цифр, пробела и специальных символов за исключением точки, апострофа и квадратных скобок. Длина имени – до 64 символов. Имя не может начинаться с одного или нескольких пробелов

После ввода имени поля, нажав клавишу Tab или Enter, вы перейдете в графу Тип данных, в которой увидите слово Текстовый. В правом углу этой графы находится кнопка выпадающего меню. Если тип данных остается без изменения, то нажимается кнопка Tab или Enter , если нужно ввести другой тип данных, то нажимается кнопка выпадающего меню и выбирается нужный тип поля. Для того чтобы сделать таблицы понятными, в конструкторе таблиц имеется графа Описание, в которую вводятся комментарии для каждого поля таблицы. Завершается ввод комментариев нажатием клавиши Tab или Enter .

После того как создание полей таблицы завершено, ее необходимо сохранить. Для сохранения таблицы из меню Файл выбираем команду Сохранить или нажимаем соответствующую кнопку на Панели инструментов. В окне Имя таблицы меняем присвоенное по умолчанию Access имя Таблица 1 на нужное и нажимаем кнопку ОК. Появляется запрос: Ключевое поле не определено. Ввести ключевое поле? Нажимаем кнопку ОК. В первой строке в крайней левой графе появляется изображение ключа, а в графах поле и тип данных появляются слова КОД и СЧЕТЧИК. Появилось новое поле с именем КОД, содержащее последовательную автоматическую нумерацию строк и являющееся ключевым. Если в качестве ключевого определено другое поле (в данном случае н_фир), то необходимо подвести курсор мыши к крайнему левому полю щелкнуть на нем левой кнопкой, строка почернеет (т.е. станет выделенной). Нажимаем на кнопку с изображением ключа на панели инструментов. Изображение ключа переместится с поля КОД на поле н_фир.

На этом создание структуры таблицы заканчивается. Структура остальных таблиц БД создается аналогично.

Замечание. В таблицах ПОТРЕБ и ПОСТ ключевым полем будет являться поле счетчика с именем КОД , так как значения во всех остальных полях могут повторяться.

 

Ввод данных в таблицу

Для включения режима ввода данных, т.е. заполнения таблицы, нужно щелкнуть на соответствующем имени таблицы в окне открытой базы данных. Имя таблицы будет выделено цветом. Затем следует щелкнуть

на кнопке Открыть. Можно также открыть таблицу для заполнения двойным щелчком мыши по имени таблицы. Появится окно для ввода данных в таблицу (рис. 11).

Связывание таблиц

 

В MS Access вы можете устанавливать постоянные связи между таблицами,которые будут поддерживаться при создании форм, отчетов и запросов.

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

Наиболее важным из рассматриваемых ранее типов связей является тип «один ко многим» (1:N). В отношении «один ко многим» главной является таблица, в которой поле, используемое для связи, является ключевым. Эта таблица называется Таблицей-запросом. Таблица, имеющая совпадающее по имени поле, называется Связанной таблицей-запросом. Создание связей между таблицами осуществляется в окне диалога «Схема данных». Для определения связей между таблицами необходимо выполнить следующие действия.

Откройте окно диалога Схема данных, выполнив команду Сервис/Схема данных или нажав соответствующую кнопку на панели инструментов . Открывается окно Схема данных, а на его фоне окно Добавление таблицы. Если окно Схема данных пустое, то следует правой клавишей мыши вызвать контекстное меню и нажать в нем кнопку Добавить таблицу либо нажать на кнопку Отобразить таблицу на панели инструментов. В окне Добавление таблицы выделяем имя таблицы Фирма и нажимаем кнопку Добавить. Затем выделяем таблицу Потреб и нажимаем кнопку Добавить. Аналогичные действия проделываем со всеми оставшимися таблицами. Затем нажимаем кнопку Закрыть. В окне диалога Схема данных должны появиться все 4 связываемые таблицы (рис. 12).

 

 

Рис. 12

 

Для связывания таблиц выберите ключевое поле в таблице Фирма и переместите его с помощью мыши на соответствующее поле таблицы КомпИЗД. На экране откроется окно диалога Изменение связей (рис. 13). Устанавливаем опцию Обеспечение целостности данных и нажимаем кнопку Создать. Вы вернетесь в окно диалога Схема данных, в котором появится изображение линии связи между таблицами Фирма и КомпИЗД . В том же порядке устанавливаются связи и между другими таблицами. В результате Схема данных примет вид, показанный на рис. 14.

 

 

 


Рис. 13

 

 

Рис. 14

Тип создаваемой связи зависит от полей, которые были указаны при определении связи:

· отношение «один-ко-многим» – создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс;

· отношение «один-к-одному» – создается в том случае, когда оба связываемых поля ключевые или имеют уникальные индексы;

· связь с отношением «многие-ко-многим» – фактически представляет две связи с отношением «один-ко-многим» через третью таблицу, ключ которой состоит, по крайней мере, из двух полей, которые являются ключевыми в двух других таблицах.

 

2.3.7. Изменение структуры таблицы в окне диалога Схема данных

 

При создании связи в окне диалога Схема данных может возникнуть необходимость в изменении структуры таблицы. При этом вы можете не покидать окна диалога, а внести нужные изменения в структуру таблицы непосредственно в окне диалога:

· установите курсор мыши на модифицируемую таблицу;

· нажмите правую кнопку мыши и выберите из контекстного меню команду Конструктор таблиц;

· внесите в структуру таблицы необходимые изменения;

· сохраните изменения и закройте окно Конструктор таблиц.


Дата добавления: 2019-07-17; просмотров: 118; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!