
- •Содержание
- •Лабораторная работа №1, 2
- •Лабораторная работа №3,4
- •Преобразовать er–диаграмму в схему базы данных
- •Ход работы: Анализ предметной области.
- •Анализ информационных задач и круга пользователей системы
- •1) Функциональные возможности:
- •2) Готовые запросы:
- •Логическое проектирование реляционной бд Преобразование er–диаграммы в схему базы данных
- •Составление реляционных отношений.
- •Нормализация полученных отношений (до 3 нф)
- •Окончательная схема реляционных отношений
- •Лабораторная работа №5.
- •Что такое база данных
- •Преимущества Access по сравнению с другими программами
- •Ход работы:
- •Лабораторная работа №6, 7
- •Общая информация: Создание таблиц простейшим способом
- •Лабораторная работа № 8,9
- •Лабораторная работа №10
- •Лабораторная работа №11 Создание и печать отчетов.
- •Лабораторная работа № 12 .
- •Литература
Нормализация полученных отношений (до 3 нф)
1 НФ:
Для приведения таблиц к 1НФ необходимо разбить сложные атрибуты на простые, а многозначные атрибуты вынести в отдельные отношения.
Многозначный атрибут “авторы” отношений “статьи”, “книги” вынесем в отдельные отношения “авторы статей”, “авторы книг”.
2 НФ:
В нашей базе данных составные первичные ключи имеют отношения “выпуски”, “заказы выпусков”, “заказы книг”. Не ключевые атрибуты этих отношения функционально полно зависят от первичных ключей.
3 НФ:
Отношения данной базы данных не нарушают требований 3НФ.
Окончательная схема реляционных отношений
Отношение Читатели(readers) |
|||||||
Номер чит. Билета |
r_id |
N(6) |
Первичный ключ |
||||
ФИО |
r_name |
C(50) |
Обязательное поле |
||||
Дата рождения |
r_born |
D |
|
||||
Адрес |
r_add |
C(50) |
Обязательное поле |
||||
Телефон |
r_tel |
C(30) |
|
||||
Отношение Книги(books) |
|||||||
Идентификатор книги |
b_id |
N(10) |
Первичный ключ |
||||
Название книги |
b_name |
C(100) |
Обязательное поле |
||||
Издательство |
b_publisher |
С(30) |
|
||||
Количество экземпляров |
b_quantity |
N(3) |
Обязательное поле |
||||
Количество страниц |
b_pages |
N(5) |
Обязательное поле |
||||
Рейтинг |
b_rating |
N(5) |
Обязательное поле |
||||
Дата посл. выдачи |
b_lastdate |
D |
|
||||
Шифр раздела |
p_code |
C(20) |
Внешний ключ (partitions) |
||||
Отношение Журналы(magazines): |
|||||||
Идентификатор журнала |
m_id |
N(5) |
Первичный ключ |
||||
Название |
m_name |
C(100) |
Обязательное поле |
||||
Издатель |
m_publisher |
C(100) |
|
||||
Шифр раздела |
p_code |
C(20) |
Внешний ключ (partitions) |
||||
Отношение Статьи(articles): |
|||||||
Идентификатор статьи |
a_id |
N(10) |
Первичный ключ |
||||
Название |
a_name |
C(50) |
Обязательное поле |
||||
Страница статьи в журнале |
a_page |
N(5) |
Обязательное поле |
||||
Идентификатор выпуска |
f_id |
N(10) |
Внешний ключ (fascicles) |
||||
Отношение Выпуски(fascicles): |
|||||||
Идентификатор выпуска |
f_id |
N(10) |
Первичный ключ |
||||
Номер выпуска |
f_number |
N(10) |
Обязательное поле |
Уникальная совокупность полей |
|||
Идентификатор журнала |
m_id |
N(10) |
Внешний ключ (magazines) |
||||
Количество журналов выпуска в библиотеке |
f_quantity |
N(10) |
Обязательное поле |
||||
Дата выпуска журнала |
f_date |
D |
|
||||
Дата последней выдачи |
f_lastdate |
D |
|
||||
Количество страниц |
f_pages |
N(4) |
|
||||
Рейтинг |
f_rating |
N(5) |
Обязательное поле |
||||
Отношение заказы выпусков(fascicle_order): |
|||||||
Дата заказа |
fo_date |
D |
Обязательное поле |
||||
Идентификатор читателя |
r_id |
N(6) |
Внешний ключ (кeaders) |
Уникальная совокупность полей |
|||
Идентификатор выпуска |
f_id |
N(10) |
Внешний ключ (fascicles) |
||||
Отношение заказы книг(book_order): |
|||||||
Дата заказа |
bo_date |
D |
Обязательное поле |
||||
Идентификатор читателя |
r_id |
N(6) |
Внешний ключ (readers) |
Уникальная совокупность полей |
|||
Идентификатор книги |
b_id |
N(10) |
Внешний ключ (books) |
||||
Отношение разделы(partitions): |
|||||||
Шифр раздела |
p_code |
C(10) |
Первичный ключ |
||||
Название |
p_name |
C(50) |
Обязательное поле |
||||
Отношение книги на руках(book_taken): |
|||||||
Идентификатор книги |
b_id |
N(10) |
Внешний ключ (books) |
||||
Дата, когда взяли |
bt_date |
D |
Обязательное поле |
||||
Идентификатор читателя |
r_id |
N(6) |
Внешний ключ (readers) |
||||
Отношение журналы на руках(fascicle_taken): |
|||||||
Идентификатор книги |
m_id |
N(10) |
Внешний ключ (fascicles) |
||||
Дата, когда взяли |
ft_date |
D |
Обязательное поле |
||||
Идентификатор читателя |
r_id |
N(6) |
Внешний ключ (readers) |
||||
Отношение авторы(authors): |
|||||||
Идентификатор автора |
ath_id |
N(5) |
Суррогатный первичный ключ |
||||
ФИО автора |
ath_fio |
C(200) |
Обязательное поле |
||||
Отношение авторы книг (books_authors): |
|||||||
Идентификатор книги |
b_id |
N(5) |
Внешний ключ(books) |
||||
Идентификатор автора |
ath_id |
N(5) |
Внешний ключ(authors) |
||||
Отношение авторы статей (articles_authors): |
|||||||
Идентификатор статьи |
a_id |
N(5) |
Внешний ключ(article) |
||||
Идентификатор автора |
ath_id |
N(5) |
Внешний ключ(authors) |
Форма отчетности:
Показать реализацию модели ПО в реляционную БД (составить таблицы базы данных)
Ответить на контрольные вопросы
Контрольные вопросы:
Нормализация
Цели, которые преследуются при построении наиболее эффективной структуры данных
1НФ, 2НФ, 3НФ