Автор работы: Пользователь скрыл имя, 27 Марта 2015 в 12:15, курсовая работа
Целью данного проекта является выработка умений и навыков проектирования структуры базы данных, предназначенной для функционирования автоматизированной информационной системы. Для достижения этой цели в данном проекте выполняется разработка структуры реляционной базы данных для гипотетической информационной системы «Агентство недвижимости».
Введение
Выбор автоматизируемых функций
Краткое описание предметной области . . . . . . . . . . . . . . . . . . . . . . . . . .
Выбор и описание автоматизируемых функций . . . . . . . . . . . . . . . . . . .
Первичное описание информационного обеспечения . . . . . . . . . . . . . . .
Вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Проектирование исходных локальных моделей
Составление исходных локальных моделей . . . . . . . . . . . . . . . . . . . . . . .
Спецификации ограничений и правил . . . . . . . . . . . . . . . . . . . . . . . . . . .
Вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Проектирование нормализованных локальных ER-моделей
Нормализация локальных ER-моделей . . . . . . . . . . . . . . . . . . . . . . . . . . .
Спецификации ограничений и правил . . . . . . . . . . . . . . . . . . . . . . . . . . .
Вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Проектирование глобальной ER-модели
Анализ дублирования в локальных моделях . . . . . . . . . . . . . . . . . . . . . .
Синтез глобальной ER-модели . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Спецификации ограничений и правил . . . . . . . . . . . . . . . . . . . . . . . . . . .
Вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Проектирование реляционной и внешних моделей
Устранение категорий и явных связей. . . . . . . . . . . . . . . . . . . . . . . . . . . .
Спецификации ограничений и правил . . . . . . . . . . . . . . . . . . . . . . . . . . .
Разработка моделей внешних представлений . . . . . . . . . . . . . . . . . . . . .
Вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Разработка SQL-моделей базы данных
SQL-код создания таблиц . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SQL-код создания триггеров……………………………………………...
SQL-код реализации внешних представлений . . . . . . . . . . . . . . . . . . . . .
Вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.1 Слияние эквивалентных
Эквивалентные сущности, выявленные в п. 4.1.1, слиты в одну с объединением множеств атрибутов:
1) ) «Сотрудник» функции 2, «Экзаменатор» функции 3, «Экзаменатор» функции 4 слиты в единую сущность «Сотрудник».
2) «Курсант» функции 3 и «Курсант» функции 4 слиты в единую сущность «Курсант».
4.2.2 Синтез обобщающих сущностей и категорий
Категорий сущностей не введено.
4.2.3 Устранение дублирования атрибутов и связей
Устранение дублирующихся атрибутов и связей не проводилось.
4.3 Спецификации ограничений и правил
В данном подразделе локальные ограничения и правила, сформулированные в разд. 3 для локальных ER-моделей, трансформированы применительно к глобальной модели, а именно:
– ограничения атрибутов сущностей (таблица 4.1);
– ограничения кортежей (таблица 4.2);
– ограничения уникальности (таблица 4.3);
– динамические ограничения (таблица 4.4);
– прочие ограничения (таблица 4.5);
– операционные правила (таблица 4.6).
– правила ссылочной целостности (таблица 4.7);
Таблица 4.1
Ограничения атрибутов
Имя атрибутаили агрегата |
Источник (разд. 1.3) |
Тип |
Размер |
Границыили допустимые значения |
Структура |
Условие |
Многозначность |
Значениепо умолчанию | |
мин |
макс | ||||||||
Функция 1 «Учет прав» | |||||||||
1.1. Права.Номер прав |
1.1 |
строка цифр |
8 |
1 |
1 |
||||
1.2 Владелец прав.ФИО автовладельца |
1.2 |
агрегат |
|||||||
1.3. Права.Дата выдачи |
1.3 |
дата |
1 |
1 |
|||||
1.4. Права.Срок действия |
1.4 |
дата |
1 |
1 |
|||||
1.5. Права.Категория |
1.5 |
латин. букв. |
1 |
A,B,C,D |
1 |
1 |
|||
1.6. Владелец прав.Дата рождения |
1.6 |
дата |
2) |
1 |
1 |
||||
1.7. Владелец прав.Место рождения |
1.7 |
строка рус. букв |
<=100 |
1 |
1 |
||||
1.8. Владелец прав. Паспортные данные |
1.8 |
строка цифр |
11 |
||||||
1.9 Права.ФИО сотрудника |
1.9 |
агрегат |
|||||||
Функция 2 «Заявление на выдачу или восстановление прав» | |||||||||
2.1. Заявитель.ФИО заявителя |
1.1 |
агрегат |
1 |
1 |
|||||
2.2. Заявитель.Дата рождения |
1.2 |
дата |
1 |
1 |
|||||
2.3. Заявитель.Паспортные данные |
1.3 |
строка цифр |
11 |
1 |
1 |
||||
2.4. Заявитель.Адрес |
1.4 |
строка рус. букв |
<=30 |
1 |
1 |
||||
2.5.Заявитель.Телефон |
1.5 |
строка цифр |
6 |
0 |
1 |
||||
2.6. Сотрудник.ФИО сотрудника |
2.1 |
агрегат |
|||||||
2.7. Сотрудник.Личный номер |
2.2 |
строка цифр |
6 |
||||||
2.8. Сотрудник. Должность |
2.3 |
строка рус. букв |
<=30 |
А…Яя |
1 |
1 |
|||
2.9. Заявление.Номер заявления |
3.2 |
строка цифр |
6 |
1 |
1 |
||||
2.10. Заявление.Основание |
3.3 |
строка рус. букв |
<=255 |
А...Яя |
1 |
1 |
|||
2.11. Заявление.Дата заявления |
3.4 |
дата |
1 |
1 |
|||||
2.11. Заявление.Текст |
3.4 |
текст |
<=30 стрк |
1 |
1 |
||||
Функция 3 «Практический экзамен по вождению» | |||||||||
3.1 Курсант.ФИО курсанта |
1.1 |
агрегат |
1 |
1 |
|||||
3.2. Курсант.Пасп. данные |
1.2 |
строка цифр |
11 |
1 |
1 |
||||
3.3. Курсант.Номер автошколы |
1.3 |
строка цифр |
4 |
1 |
1 |
||||
3.4. Экзаменатор. |
агрегат |
||||||||
3.5. Экзаменатор.ФИО экзаменатора |
2.1 |
агрегат |
1 |
1 |
|||||
3.6. Экзаменатор.Звание |
2.2 |
строка рус. букв |
<=30 |
1 |
1 |
||||
3.7. Экзаменатор.Личный номер |
2.3 |
строка цифр |
6 |
А…Яя |
1 |
1 |
|||
3.8.ПрЭкзамен.НПП |
3.1 |
строка цифр |
6 |
1 |
1 |
||||
3.9. ПрЭкзамен.Зачет первого экз. |
3.2 |
положит. целое |
1 |
1/0 |
1 |
1 |
|||
3.10. ПрЭкзамен.Зачет второго экз. |
3.3 |
положит. целое |
1 |
1/0 |
1) |
1 |
1 |
||
3.11. ПрЭкзамен.Дата сдачи |
3.4 |
дата |
1 |
1 |
|||||
3.12. ПрЭкзамен.Примечания |
3.5 |
строка рус. букв |
<=255 |
А…Яя |
1) |
1 |
1 |
||
Функция 4 «Теоретический экзамен по вождению» | |||||||||
4.1. Курсант.ФИО курсанта |
1.1 |
агрегат |
1 |
1 |
|||||
4.2. Курсант.Пасп. данные |
1.2 |
строка цифр |
11 |
1 |
1 |
4) | |||
4.3. Курсант.Номер автошколы |
1.3 |
строка цифр |
4 |
1 |
1 |
||||
4.4. Экзаменатор.ФИО экзаменатора |
2.1 |
агрегат |
1 |
1 |
4) | ||||
4.5. Экзаменатор.Звание |
2.2 |
строка рус. букв |
<=30 |
1 |
1 |
||||
4.6. Экзаменатор.Личный номер |
2.3 |
строка цифр |
6 |
А…Яя |
1 |
1 |
|||
4.7. Экзамен.НПП |
3.1 |
строка цифр |
6 |
1 |
1 |
||||
4.8. Экзамен.Кол-во неправ. отв. |
3.2 |
строка цифр |
3 |
1 |
1 |
||||
4.9. Экзамен.Примечания |
3.3 |
строка рус. букв |
<=255 |
А…Яя |
1 |
1 |
|||
4.10. Экзамен.Дата сдачи |
3.4 |
дата |
1 |
1 |
|||||
Функция 5 «Учет кадров» | |||||||||
5.1. Сотрудник.ФИО |
1.1 |
агрегат |
1 |
1 |
|||||
5.2. Сотрудник.Паспортные данные |
1.2 |
строка цифр |
11 |
1 |
1 |
||||
5.3. Сотрудник.Телефон |
1.4 |
строка цифр |
6 |
0 |
1 |
||||
5.4. Сотрудник.Семейное положение |
1.5 |
положит. целое |
1 |
1 |
1 |
||||
5.5. Сотрудник.Образование |
1.7 |
строка рус. букв |
<=30 |
А…Яя |
1 |
1 |
|||
5.6. Сотрудник.Зар. плата |
1.8 |
строка цифр |
1 |
1 |
|||||
5.7. Сотрудник.Дата рождения |
1.9 |
дата |
2) |
1 |
1 |
||||
5.8. Сотрудник.Личный номер |
1.1 |
строка цифр |
6 |
1 |
1 |
||||
5.9. Сотрудник.Группа крови |
1.11 |
положит. целое |
2 |
1...4, +,- |
1 |
1 |
|||
5.10. Дети.Нпп |
1.6 |
положит. целое |
1 |
1 |
4) | ||||
5.11. Дети.Дата рождения |
+ |
дата |
3) |
1 |
1 |
||||
5.12. Дети.Пол |
+ |
символ |
1 |
1 |
|||||
5.13. Карьера. |
агрегат |
1 |
М |
||||||
5.14. Карьера.Нпп |
+ |
положит. целое |
1 |
1 |
4) | ||||
5.15. Карьера.Должность |
2.1 |
строка рус. букв |
<=30 |
А…Яя |
1 |
1 |
|||
5.16. Карьера.Звание |
2.2 |
строка рус. букв |
<=30 |
А…Яя |
1 |
1 |
|||
5.17 Карьера.Код подразд – ия |
2.3 |
строка цифр |
6 |
1 |
1 |
||||
5.18. Карьера.Дата назначения |
2.4 |
дата |
3) |
1 |
1 |
тек. дата | |||
5.19. Карьера.Дата увольнения |
2.5 |
дата |
3) |
0 |
1 |
||||
5.20. Карьера.Название подр-ия |
+ |
1 |
1 |
||||||
5.21. Карьера.Код звания |
+ |
строка цифр |
6 |
0 |
1 |
||||
5.22. Карьера.Код должности |
+ |
строка цифр |
6 |
1 |
1 |
Примечания:
1) Определяется одним из 3 значений: 1- «Нет риска», 2 – «Повышенное внимание», «Особая опасность».
2) Для упрощения здесь и далее структура агрегата ФИО не раскрывается (см. табл. 2.1).
3) Дата рождения > Текущая дата – 100 лет; Дата рождения < Текущая дата – 20 лет.
4) Значение даты <= Текущей даты.
5) Следующее значение (инкремент).
Таблица 4.2.
Ограничения кортежей
№ п/п |
Источник |
Группа атрибутов |
Ограничение | |||
Функция 1 «Учет прав» | ||||||
1.1 |
Права.Дата выдачи, Права.Срок действия |
Права.Дата Выдачи < Права.Срок действия | ||||
1.2 |
Права.Дата выдачи, Владелец прав Дата рождения |
Права.Дата выдачи > Владелец прав.Дата рождения | ||||
Функция 2 «Заявление на выдачу или восстановление прав» | ||||||
2.1 |
Заявление.Дата заявления , Заявитель.Дата рождения |
Заявление.Дата заявления > Заявитель Дата рождения | ||||
Функция 3 «Практический экзамен» | ||||||
В данной функции ограничения на кортежи не выявлены. | ||||||
Функция 4 «Практический экзамен» | ||||||
В данной функции ограничения на кортежи не выявлены. | ||||||
Функция 5 «Учет кадров» | ||||||
5.1 |
2.1 |
Сотрудник.Дата рождения, Место.Дата назначения |
Дата назначения – Дата рождения >= 20 лет | |||
5.2 |
2.2 |
Место.Дата назначения, Место.Дата увольнения |
Место.Дата увольнения >Место. Дата назначения | |||
5.3 |
2.3 |
Дети.Дата рождения, Сотрудник.Дата рождения |
Дети.Дата рождения > Сотрудник.Дата рождения |
Таблица 4.3.
Ограничения уникальности
№ п/п |
Источник |
Группа атрибутов |
Среди каких экземпляров имеет место уникальность | ||
Функция 1 «Учет прав» | |||||
1.1 |
+ |
Права.Номер прав |
среди всех прав | ||
1.2 |
+ |
Владелец прав.Паспортные данные |
среди всех владельцев прав | ||
Функция 2 «Заявление на выдачу или восстановление прав» | |||||
2.1 |
+ |
Заявление.Номер заявления |
среди всех заявлений | ||
2.2 |
+ |
Сотрудник.Личный номер |
среди всех сотрудников | ||
2.3 |
+ |
Заявитель.Паспортные данные |
среди всех заявителей | ||
Функция 3 «Практический экзамен» | |||||
3.1 |
+ |
Экзамен.Нпп |
среди всех практических экзаменов | ||
3.2 |
+ |
Экзаменатор.Личный номер |
среди всех экзаменаторов | ||
3.3 |
+ |
Курсант.Паспортные данные |
среди всех курсантов | ||
Функция 4 «Теоретический экзамен» | |||||
4.1 |
+ |
Экзамен.Нпп |
среди всех теоретических экзаменов | ||
4.2 |
+ |
Экзаменатор.Личный номер |
среди всех экзаменаторов | ||
4.3 |
+ |
Курсант.Паспортные данные |
среди всех курсантов | ||
Функция 5 «Учет кадров» | |||||
5.1 |
5.1 |
Сотрудник.Личный номер |
среди всех экз. сущности «Сотрудник» | ||
5.2 |
5.2 |
Сотрудник.ФИО |
« | ||
5.3 |
5.3 |
Сотрудник.Паспортные данные |
« | ||
5.4 |
5.4 |
Дети.Нпп |
среди всех экз. сущности «Дети» | ||
5.5 |
5.5 |
Место.Нпп |
среди всех экз. связи «Место» одного сотрудника | ||
5.6 |
5.6 |
Место.Дата назначения |
« | ||
5.7 |
5.7 |
Место.Дата увольнения |
« | ||
5.8 |
+ |
Звание.Код |
среди всех экз. сущности «Звание» | ||
5.9 |
+ |
Подразделение.Код |
среди всех экз. сущности «Подразделение» | ||
5.10 |
+ |
Должность.Код |
среди всех экз. сущности «Должность» |
Динамические ограничения
В функциях 1-5 динамические ограничения не выявлены
Таблица 4.5
Другие ограничения
№ п/п |
Источник |
Группа атрибутов |
Ограничение |
Функция 1 «Учет прав» — ограничения не выявлены | |||
Функция 2 «Заявление на выдачу или восстановление прав» — ограничения не выявлены | |||
Функция 3 «Практический экзамен» — ограничения не выявлены | |||
Функция 4 «Теоретический экзамен» — ограничения не выявлены | |||
Функция 5 «Учет кадров» | |||
2.1 |
+ |
Карьера.Дата увольнения |
«Дата увольнения», соответствующая данному сотруднику, может быть незаполненной только для последнего места его работы (текущей) |
2.2 |
+ |
Карьера.Нпп, Дата назначения, Дата увольнения |
Хронологическая последовательность значений «Дата назначения», «Дата увольнения» в агрегате «Карьера», соответствующих одному сотруднику, упорядоченных по «Нпп» |
2.3 |
+ |
Карьера.Нпп |
Последовательность номеров, соответствующая должностям, должна начинаться с 1 и не иметь пропусков |
2.4 |
+ |
Дети.Нпп, Дата рождения |
Хронологическая последовательность значений «Дата рождения» в агрегате «Дети», соответствующих одному сотруднику, упорядоченных по «Нпп» |
2.5 |
+ |
Дети.Нпп |
Последовательность номеров, соответствующая должностям, может начинаться с 0 и не иметь пропусков |
Таблица 4.6.
Операционные правила
№ п/п |
Источник (табл. 1.3) |
Группа атрибутов |
Ограничение |
Функция 1 «Учет прав» — Правила не выявлены | |||
Функция 2 «Заявление на выдачу или восстановление прав» — Правила не выявлены | |||
Функция 3 «Практический экзамен» — Правила не выявлены | |||
Функция 4 «Теоретический экзамен» — Правила не выявлены | |||
Функция 5 «Учет кадров» — Правила не выявлены | |||
Атрибуты, относящиеся к сотруднику: Личный номер, Фамилия, Имя, Отчество, … и т.д. |
При удалении записи о каком-либо сотруднике все сведения о нем переносятся в архивную базу с указанием даты-времени, причины удаления и имени пользователя, выполнившего удаление. Эти сведения хранятся в архивной базе не менее 1 года, а затем могут быть автоматически удалены |
Таблица 4.7.
Ссылочные правила
№ п/п |
Источник (табл. 3.7) |
Родительская сущность/связь |
Дочерняя сущность/связь |
Правило удаления |
Другие правила |
1 |
сотрудник |
дети |
каскадное |
||
2 |
звание |
сотрудник |
строгое |
||
3 |
должность |
сотрудник |
строгое |
||
4 |
сотрудник |
права |
строгое |
||
5 |
сотрудник |
место |
каскадное |
||
6 |
сотрудник |
практ.экзамен |
строгое |
||
7 |
сотрудник |
теор.экзамен |
строгое |
||
8 |
сотрудник |
заявление |
строгое |
||
9 |
подразделение |
место |
каскадное |
||
10 |
заявитель |
заявление |
каскадное |
||
11 |
владелец прав |
права |
каскадное |
||
12 |
курсант |
практ.экзамен |
каскадное |
||
13 |
курсант |
теор.экзамен |
каскадное |
4.3 Вывод
В результате проектирования глобальной ER-модели, соответствующей локальным ER-моделям для отдельных автоматизируемых функций, получена графическая модель, включающие от 2 до 2 сущностей в третьей нормальной форме. Разработанные спецификации ограничений и операционных правил включают все ограничения и правила, полученные на предыдущем этапе и трансформированные для глобальной ER-модели; дополнительно на данном этапе введено ограничений и правил.
Рисунок 4.1 — Глобальная ER-модель базы данных
Информация о работе База данных для информационной системы "Агенство недвижимости"