Скачиваний:
68
Добавлен:
15.03.2015
Размер:
868.73 Кб
Скачать

Санкт-Петербургский Государственный Университет Телекоммуникаций имени проф. М.А. Бонч-Бруевича

Факультет Информационных систем и технологий Кафедра Информационных и управляющих систем

Отчет к лабораторной работе №6

«Библиотека»

По дисциплине: Управление данными

Выполнил: Соколов Д.С.

Группа ИСТ-12

Преподаватель: Сабинин О.Ю.

Санкт-Петербург

2014

Цель работы

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

Задание

1. Создать логическую модель базы данных для учета имеющихся в библиотеке книг.

Требования к модели:

- У книги может быть один или несколько авторов;

- Автор может издать одну или несколько книг;

- Книга может быть издана одним или несколькими издательствами;

- Издательство может издавать одну или несколько книг.

База данных должна содержать следующую информацию:

- об авторах: фамилию, имя, отчество;

- о книгах: название, авторы, год издания, издательство, цена;

- об издательствах: название, город, телефон.

2. Предусмотреть значения по умолчанию для столбца Цена (0), Телефон (‘111-11-11’) и проверку вводимых пользователем значений – Цена >= 0

3. Создать физическую модель базы данных. Отобразить ключевые поля.

4. Создать представление для отображения фамилий авторов, названий книг, названий издательств.

5. Проверить разработанную модель средствами Validator.

6. Устранить ошибки модели, которые выявил Validator.

7. Провести прямое проектирование – создать объекты базы данных в Oracle.

8. Проверить базу данных в Oracle: наличие ключевых полей, значений по умолчанию, условий проверки вводимых пользователем значений, связей между таблицами, работу представления и запросов (для проверки работоспособности базы данных внести в таблицы базы данных по 5 записей)

9. Провести обратное проектирование базы данных из Oracle.

Ход работы

1. Создадим логическую модель базы данных в Data Modeler с учетом всех поставленных требований (рисунок 1). Так как связь между таблицей «Автор» и «Книга» многие-ко-многим, то для её осуществления потребуется ассоциативная таблица, как и для связи таблиц «Книга» и «Издательство». Так как в качестве первичного ключа выбран суррогатный ключ в таблицах «Автор», «Книга» и «Издательство», то введем альтернативные ключи – в таблице «Автор» столбец «ФАМИЛИЯ», т.е. предполагаем, что автором с одинаковыми фамилиями не будет, в таблице «Книга» столбцец «НАЗВАНИЕ», т.е. предполагаем, что книг с одинаковым названием не будет, в таблице «Издательство» столбец «НАЗВАНИЕ_ИЗД», т.е. не может быть несколько издательств с одинаковым названием.

Рисунок 1 – Логическая модель БД

2. Предусмотрим значения по умолчанию для столбцов «Цена» и «Телефон» (рисунок 2) и проверку вводимых пользователем значений – Цена > 0 (рисунок 3).

Рисунок 2 – Значения по умолчанию для столбцов «Цена» и «Телефон»

Рисунок 3 – Проверка вводимых пользователем значений для столбца «Цена»

3. Создадим представление для отображения фамилий авторов, названий книг, названий издательств (рисунок 4)

Рисунок 4 – SQL код представления.

4. Создадим физическую модель базы данных (рисунок 5) с представлением

Рисунок 5 – Физическая модель БД с созданным представлением

5. Проверим разработанную модель в Data Model Validator. В созданной модели базы данных ошибок не обнаружено (рисунок 6).

Рисунок 6 – Результат проверки в Data Model Validator

6. Устранять ошибки, которые выявил Data Model Validator нет необходимости, так как их нет.

7. Выполним прямое проектирование в Oracle Database. Все запросы были выполнены без ошибок (рисунок 7).

Рисунок 7 – Результат прямого проектирования

8. Проверим работу базы данных в Oracle. Построим реляционную модель в Data Modeler, в которой можно проверить правильность переноса связей, ключевых полей и всех столбцов модели из ERWIN в Oracle DB (рисунок 8).

Рисунок 8 – Реляционная модель проектируемой БД

Проверим наличие значений по умолчанию для столбцов «Цена» (рисунок 9) и «Телефон» (рисунок 10), а также проверку вводимых пользователем значений для столбца «Цена» (рисунок 11).

Рисунок 9 – Значение по умолчанию для столбца «Цена»

Рисунок 10 – Значение по умолчанию для столбца «Телефон»

Рисунок 11 – Проверка вводимых пользователем значений для столбца «Цена»

Заполним все таблицы (рисунки 12-16) в созданной базе данных для проверки view «Книги» (представления).

Рисунок 12 – Заполненная таблица «Автор»

Рисунок 13 – Заполненная таблица «Издательство»

Рисунок 14 – Заполненная таблица «Книга»

Рисунок 15 – Заполненная таблица «Книга_Автор»

Рисунок 16 – Заполненная таблица «Книга_Издательство»

Проверим работу представления «Книги» (рисунок 17).

Рисунок 17 – Представление «Книги»

9. Произведем обратное проектирование базы данных из Oracle (рисунок 18)

Рисунок 18 – Полученная модель в результате обратного проектирования

Вывод

В ходе данной лабораторной работы была спроектирована модель базы данных «Библиотека» в соответствии с заданием в ERWIN Data Modeler. Модель была проверена с помощью ERWIN Data Modeler Validator и было произведено прямое проектирование данной модели в Oracle DB. База данных была заполнена и проверена. Также было выполнено обратное проектирование базы данных из Oracle DB в ERWIN Data Modeler.

Соседние файлы в папке 5-Библиотека