Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
27
Добавлен:
02.05.2014
Размер:
2.03 Mб
Скачать

54

2005.552800.Бд.Кп.Пз т28-320.13

Рисунок 4.1 — Глобальная ER-модель базы данных

5 Проектирование реляционной и внешних моделей

Данный раздел посвящен проектированию реляционной и внешних моделей. Здесь выполняется перевод глобальной ER-модели в реляционную форму, специфицируются ограничения и правила поддержания целостности на реляционном уровне. Для приведения ER-модели к реляционной форме производится устранение категорий и замена явных связей неявными, основанными на общих атрибутах. Специфицируются ограничения целостности и операционные правила на уровне концептуальной реляционной модели. Разрабатываются модели внешних представлений базы данных для отдельных функций. Здесь выбираются способы и формы внешних представлений, строятся модели соединения таблиц базы данных в представлениях.

5.1 Устранение категорий и явных связей

В данном подразделе в глобальной ER-модели устраняются категории сущностей либо путем расщепления обобщенной сущности, либо путем слияния категорий, либо путем выделения категорий в отдельные сущности. Затем устраняются явные связи типа «многие ко многим» и «один ко многим», в результате чего модель переходит в реляционную форму. Графическое представление реляционной модели приведено на рис. 5.1 в конце раздела.

5.1.1 Устранение категорий сущностей

Категория обобщающей сущности «Сотрудник» устранена путем объединения сущностей «Дежурный» и «Оперативник» в единую сущность «Сотрудник».

5.1.2 Устранение явных связей типа «многие ко многим»

Явные связи типа «многие ко многим» устранены путем замены их одноименной сущностью с копированием идентификаторов связываемых сущностей в состав атрибутов для сохранения неявных связей. В результате появились новые сущности: «Место», «Группа», «Дежурство».

5.1.3 Устранение явных связей типа «один ко многим»

Явные связи типа «один ко многим» заменены неявными путем копирования атрибутов-идентификаторов родительской сущности в множество атрибутов дочерней сущности. Такое копирование произведено для сущностей «Дети», «Имущество», «Вызов», «Сотрудник».

5.2  Спецификации ограничений и правил

В данном подразделе ограничения и правила, сформулированные в разд. 4 для глобальной ER-модели, трансформированы применительно к реляционной модели, а именно:

– ограничения атрибутов сущностей (таблица 5.1);

– ограничения кортежей (таблица 5.2);

– ограничения уникальности (таблица 5.3);

– динамические ограничения (таблица 5.4);

– прочие ограничения (таблица 5.5);

– операционные правила (таблица 5.6);

– стандартные ссылочные правила (таблица 5.7) .

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

Таблица 5.1  

Ограничения атрибутов

Имя атрибута

или агрегата

Источник (разд. 3.1)

Тип

Размер

Границы

или

допустимые

значения

Структура

Условие

Значение

по умолчанию

1. Сотрудник.ФИО

1.1

строка рус. букв

<=40

2)

2. Сотрудник.Личный номер

1.2

строка цифр

6

3. Сотрудник.Пасп. данные

2.2

строка цифр

11

4. Сотрудник.Телефон

2.3

строка цифр

6

5. Сотрудник.Сем. положение

2.4

положит. целое

1

6. Сотрудник.Образование

2.5

строка рус. букв

<=30

А…Яя

7. Сотрудник.Зар. плата

2.6

строка цифр

8. Сотрудник.Д/рождения

2.7

дата

3)

9. Сотрудник.Группа крови

2.9

положит. целое

2

1...4, +,-

10. Сотрудник.Код звания

+

строка цифр

3

11. Сотрудник.Код должности

+

строка цифр

3

13. Вызов.Нпп вызова

1.3

положит.целое

5)

11. Вызов.Дата

1.4

дата

тек. дата

12. Вызов.Время

1.5

время

тек. время

13. Вызов.Причина

1.6

строка рус. букв

<=50

14. Вызов.Адрес

1.7

строка рус. букв

<=100

15. Вызов.Степень риска

1.8

число

1

1)

16. Вызов.Номер опер. группы

1.9

строка цифр

3

16. Вызов.Л/номер дежурного

+

строка цифр

6

17. Вызов.Телефон звонившего

+

строка цифр

<=10

18. Звонивший.ФИО

1.10

агрегат

19. Звонивший.Телефон

1.11

строка цифр

<=10

20. Дети.Нпп

2.10

положит. Целое

5)

21. Дети.Дата рождения

2.11

дата

4)

22. Дети.Пол

2.12

символ

23. Дети.Л/номер сотрудника

+

строка цифр

6

24. Место.Нпп

2.13

положит. целое

5)

25. Место.Дата назначения

2.14

дата

4)

тек. дата

26. Место.Дата увольнения

2.15

дата

4)

27. Место.Код подр-ия

+

строка цифр

6

28. Место.Личный номер

+

строка цифр

6

29. Должность.Название

2.16

строка рус. букв

<=30

А…Яя

30. Должность.Код

2.17

строка цифр

3

31. Звание.Звание

2.18

строка рус. букв

<=30

А…Яя

32. Звание.Код

2.19

строка цифр

3

33. Подразделение.Код

2.20

строка цифр

6

34. Подразделение.Название

2.21

строка рус. букв

<=30

35. Имущество Название

3.3

строка рус. букв

<=30

36. Имущество Идент. номер

3.4

строка цифр

6

37. Дежурство.Нпп

4.1

положит. целое

5)

38. Дежурство Дата заст-ия

4.2

дата

39. Дежурство.Л/номер деж-ого

+

строка цифр

6

40. Дежурство.Нпп наряда

+

полож..целое

5)

41. Наряд.Нпп

4.3

полож. целое

5)

42. Наряд.Номер группы

+

строка цифр

3

43. Отчет.Нпп вызова

+

полож. целое

5)

44. Отчет.Номер протокола

5.2

строка цифр

6

45. Отчет.Мероприятия

5.3

текст

<=256

46. Отчет.Примечания

5.4

текст

<=256

47. Группа.Номер группы

+

строка цифр

6

48. Группа.Л/номер сотрудника

+

полож. целое

6

Примечания:

1) Определяется одним из 3 значений: 1- «Нет риска», 2 – «Повышенное внимание», «Особая опасность».

2) Для упрощения здесь и далее структура агрегата ФИО не раскрывается (см. табл. 2.1).

3) Дата рождения > Текущая дата – 100 лет; Дата рождения < Текущая дата – 20 лет.

4) Значение даты <= Текущей даты.

5) Следующее значение (инкремент).

Таблица 5.2.  

Ограничения кортежей

п/п

Источник (табл. 4.2)

Группа атрибутов

Ограничение

1

2.1

Сотрудник.Дата рождения,

Место.Дата назначения

Дата назначения – Дата рождения >= 20 лет

2

2.2

Место.Дата назначения, Дата увольнения

Дата увольнения > Дата назначения

3

2.3

Дети.Дата рождения,

Сотрудник.Дата рождения

Дети.Дата рождения > Сотрудник.Дата рождения

4

4.1

Сотрудник.Дежурный.Личный номер,

Сотрудник.Оперативник. Личный номер

Дежурный.Личный номер ≠ Оперативник. Личный номер

Ограничения уникальности

Таблица 5.3.  

п/п

Источник

(табл 4.3)

Группа атрибутов

1

1.1

Вызов.Нпп

2

1.2

Сотрудник.Личный номер

3

2.2

Сотрудник.ФИО

4

2.3

Сотрудник.Паспортные данные

5

2.4

Дети.Нпп, Сотрудник.Личный номер

6

2.5

Место.Нпп, Сотрудник.Личный номер

7

2.6

Место.Дата назначения, Сотрудник.Личный номер

8

2.7

Место.Дата увольнения, Сотрудник.Личный номер

9

2.8

Звание.Код

10

2.9

Подразделение.Код

11

2.10

Должность.Код

12

3.1

Имущество.Инвентарный номер

13

4.1

Дежурство.Нпп дежурства

14

4.2

Дежурство.Дата заступления

15

4.3

Наряд.Нпп

16

5.1

Вызов.Нпп вызова

17

5.2

Отчет.Номер протокола

18

+

Группа.Номер группы

Динамические ограничения

Динамические ограничения не выявлены

Таблица 5.5.  

Другие ограничения

п/п

Источн.

табл 4.5

Событие

Группа атрибутов

Ограничение

1.1

1.1

Вставка или обновление экз. сущн.

Вызов

Вызов.Нпп

Последовательность номеров, соответствующая вызовам, должна начинаться с 1 и не иметь пропусков

1.2

1.2

Вставка или обновление экз. сущн. Вызов

Вызов.Нпп, Дата вызова, время вызова

Хронологическая последовательность значений «Дата вызова», «Время вызова» упорядоченных по «Нпп»

2.1

2.1

Вставка или обновление экз. сущн.

Место

Место.Дата увольнения

«Дата увольнения», соответствующая данному сотруднику, может быть незаполненной только для последнего места его работы (текущей)

2.2

2.2

Вставка или обновление экз. сущн.

Место

Место.Нпп, Дата назначения,

Дата увольнения

Хронологическая последовательность значений «Дата назначения», «Дата увольнения» в связях «Место», соответствующих одному сотруднику, упорядоченных по «Нпп»

2.3

2.3

Вставка или обновление экз. сущн.

Место

Место.Нпп

Последовательность номеров, соответствующая должностям, должна начинаться с 1 и не иметь пропусков

2.4

2.4

Вставка или обновление экз. сущн.

Дети

Дети.Нпп, Дата рождения

Хронологическая последовательность значений «Дата рождения» в агрегате «Дети», соответствующих одному сотруднику, упорядоченных по «Нпп»

2.5

2.5

Вставка или обновление экз. сущн.

Дети

Дети.Нпп

Последовательность номеров, соответствующая должностям, может начинаться с 0 и не иметь пропусков

4.1

4.1

Вставка или обновление экз. сущн.

Дежурство

Дежурство.Нпп, Дата заступления

Хронологическая последовательность значений «Дата заступления» упорядоченных по «Нпп»

4.2

4.2

Вставка или обновление экз. сущн.

Дежурство

Дежурство.Нпп

Последовательность номеров, соответствующая номерам дежурств, должна начинаться с 1 и не иметь пропусков

4.3

4.3

Вставка или обновление экз. сущн.

Наряд

Наряд.Нпп

Последовательность номеров, соответствующая нарядам, должна начинаться с 1 и не иметь пропусков

Таблица 5.6.  

Операционные правила

п/п

Источник

(табл. 4.6)

Событие

Группа атрибутов

Ограничение

1

2.1

Удаления экземпляра сущности «Сотрудник»

Атрибуты, относящиеся к сотруднику:

Личный номер, Фамилия, Имя, Отчество, … и т.д.

При удалении записи о каком-либо сотруднике все сведения о нем переносятся в архивную базу с указанием даты-времени, причины удаления и имени пользователя, выполнившего удаление. Эти сведения хранятся в архивной базе не менее 1 года, а затем могут быть автоматически удалены

2

3.1

Удаления экземпляра сущности «Имущество»

Атрибуты относящиеся к имуществу: Название, Идент. номер.

При удалении записи о каком-либо имуществе все сведения о нем переносятся в архивную базу с указанием даты-времени, причины удаления и имени пользователя, выполнившего удаление. Эти сведения хранятся в архивной базе не менее 1 года, а затем могут быть автоматически удалены

Таблица 5.7 

Стандартные ссылочные правила

п/п

Источник

(табл. 4.7)

Родительская

сущность/связь

Дочерняя

сущность/связь

Правило

удаления

Правило

обновления

Правило

вставки

1

Сотрудник

Имущество

строгое

каскадное

строгое

2

Сотрудник

Дежурство

каскадное

«

«

3

Сотрудник

Место

каскадное

«

«

4

Сотрудник

Вызов

строгое

«

«

5

Сотрудник

Дети

каскадное

«

«

6

Звание

Сотрудник

строгое

«

«

7

Должность

Сотрудник

строгое

«

«

8

Подразделение

Место

строгое

«

«

9

Наряд

Дежурство

каскадное

«

«

10

Группа

Наряд

каскадное

«

«

11

Сотрудник

Группа

каскадное

«

«

12

Вызов

Отчет

каскадное

«

«

13

Звонивший

Вызов

каскадное

«

«

14

+

Группа

Вызов

строгое

«

«

Соседние файлы в папке База данных - ИС милиции