
Управление данными УД / Управление данными_ИСТ-11-12-15 / ИСТ-12 / 5-Библиотека / Худяев Егор
.docСанкт-Петербургский государственный университет телекоммуникаций
им. проф. М.А. Бонч-Бруевича
факультет Информационных систем и технологий
кафедра Безопасность Информационных систем
Отчёт по лабораторной работе №5
Тема: «Автоматизированное проектирование базы данных библиотеки»
Дисциплина: Управление Данными
Выполнил: Худяев Е.А. ИСТ-12
Преподаватель: Сабинин О.Ю.
Санкт-Петербург
2014
Постановка задачи
-
Создать логическую модель БД для учета имеющихся в библиотеке книг. Требования к модели:
-
У книги может быть один или несколько авторов
-
Автор может издать одну или несколько книг
-
Книга может издаваться в нескольких или одном издательстве
-
Издательство может издавать одну или несколько книг
-
БД должна содержать информацию:
-
Фамилию, имя, отчество автора
-
Название, автора, год издания, издательство и цену книги
-
Название, город и телефон издательства
-
Предусмотреть значения по умолчанию для столбцов «цена» и «телефон».
-
Создать физическую модель с ключевыми полями.
-
Представление для отображения Фамилии, Издательства и Названия книги.
-
Проверить модель средством validator и устранить возможные ошибки
-
Провести прямое проектирование.
-
Проверить полученную БД на наличие ключевых полей, ограничений, связей, работу представления и запросов.
Провести обратное проектирование.
Ход
работы
Создаем новую Logical/Physical модель в Erwin Data Modeler.
Создаём сущности Книга, Автор и Издательство и задаём им атрибуты:
Создаём связь многие-ко-многим между сущностями и создаём ассоциативные таблицы. В результате у нас получится пять сущностей.
Переходим в физическую модель и составляем представление, в котором хотим вывести фамилию автора, название книги и название издательства.
В итоге у нас сложилась вот такая картина:
Не забываем установить значения по умолчанию для телефона ‘111-11-11’ и цены ‘0’.
Устанавливаем минимально значение для цены.
.
Проверяем полученную модель средством Validator. Устраняем ошибки, если они есть.
Переходим к прямому проектированию. Связываем нашу модель с учётной записью в Oracle.
Устраняем ошибки, если на них указывают. После заходим в Oracle. Результатом проектирования является появление наших сущностей в списке таблиц.
Реляционная модель в Oracle будет выглядеть так:
Заполняем таблицы и проверяем установку значений по умолчанию.
Таблица Автор:
Таблица Издательство:
Таблица Книга:
Таблица Книга_Изд:
Таблица Книга_Автор:
Заполняя таблицы, убедились в том, что:
a. У книги может быть один или несколько авторов
b. Автор может издать одну или несколько книг
c. Книга может издаваться в нескольких или одном издательстве
d. Издательство может издавать одну или несколько книг
Проверка значения по умолчанию для телефона:
Проверка значения по умолчанию для цены:
Минимальное значение в столбце «Цена» 0 (ошибка, если мы запишем число меньше):
Заходим в Views и проверяем работу представления, содержащего фамилию автора, название книги и названия издательства.
Выполним несколько запросов, чтобы проверить работу наших таблиц в Oracle:
1) Вывести всю информацию из таблицы Книга, где название книги Синица:
2) Вывести фамилию и номер ИНН авторов, у которых фамилия начинается на букву К:
Выполняем процедуру обратного проектирования:
Вывод
Научились создавать физическую и логическую модель в ALLFusion ERwin Data Modeler. Научились пользоваться средством Validator. Создали работоспособную базу данных для библиотеки. Научились выполнять прямое и обратное проектирование.