Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Концептуальное моделирование

.pdf
Скачиваний:
29
Добавлен:
11.06.2015
Размер:
1.38 Mб
Скачать

Студент изучает дисциплину (Студент × Дисциплина)

Номер

 

Фамилия и

 

 

Номер

 

 

 

 

 

 

 

Тру-

зачет-

 

 

 

ком-

 

 

Шифр

 

 

Название

 

доем-

ной

 

инициалы

 

 

наты

 

 

 

 

 

кость

 

 

 

 

 

 

 

 

 

 

книжки

 

 

 

 

 

 

 

 

 

 

 

 

 

1393

Иванов А.В.

321

 

ОПД.Ф.10

Базыданных

136

1393

Иванов А.В.

321

 

СД.Ф.10

ПроектированиеАСОИУ

170

1862

Акопов Э.В.

NULL

ОПД.Ф.10

Базыданных

136

1862

Акопов Э.В.

NULL

СД.Ф.10

ПроектированиеАСОИУ

170

1864

Васильева Е.Ф.

521

 

ОПД.Ф.10

Базыданных

136

1864

Васильева Е.Ф.

521

 

СД.Ф.10

ПроектированиеАСОИУ

170

2341

Савицкий В.Б.

321

 

ОПД.Ф.10

Базыданных

136

2341

Савицкий В.Б.

321

 

СД.Ф.10

ПроектированиеАСОИУ

170

Соединение – подобно декартову произведения сливает два отношения R1 и R2 в одно. Как и в декартовом произведении, схема результирующего отношения является объединением схем исходных отношений. Соединение бывает внутренним и внешним.

Внутренние соединение (inner join) – в результирующем отношении соединяются только те кортежи из исходных отношений R1 и R2, у которых значения указанных поля соотносятся друг с другом определенным образом (например, равны).

Типы полей, по которым производится соединение, должны совпадать или быть сравнимы.

Разновидности внутреннего соединения:

эквисоединение (равно-соединение, equi-join) (R1 ZY С R2) – из исходных отношений R1 и R2 выбираются кортежи, у которых значения указанных полей равны, и из каждой пары таких кортежей формируется соединенный кортеж результирующего отношения;

тета-соединение (Θ-соединение) (R1 ZY С R2) – в отличие от эквисоединения, данное соединение основано на любом операторе сравнения, кроме равенства (<, <=, <>, >=, >);

естественное соединение (натуральное соединение, natural join) (R1 ZY R2) – частный вид эквисоединения, которое выполняется на основе только общих полей двух отношений (например, внешний ключ первого отношения – первичный ключ второго отношения).

61

Студент живет в комнате в общежитии (Студент ZY Комната в общежитии)

Номер зачет-

Фамилия и

Номер

Вместимость

Площадь

ной книжки

инициалы

комнаты

 

 

1393

Иванов А.В.

321

2

12

1864

Васильева Е.Ф.

521

2

12

2341

Савицкий В.Б.

321

2

12

А1

А8

А1 А8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

А1

 

 

 

 

 

 

 

 

А8

 

 

 

Рис. 42.

 

 

 

 

 

 

 

Рис. 3.

 

 

 

Операция естественного соединения

Внешнее соединение (outer join) – работает аналогично внутреннему. Разновидности внешнего соединения:

левое внешнее соединение (left outer join) –

Оператор SELECT LEFT OUTER JOIN, например правое внешнее соединение (right outer join) –

Оператор SELECT RIGHT OUTER JOIN, например полное внешнее соединение (full outer join) –

Оператор SELECT FULL OUTER JOIN, например

OUTER является необязательным словом

Номер зачет-

Фамилия и

Номер

Вместимость

Площадь

ной книжки

инициалы

комнаты

 

 

1393

Иванов А.В.

321

2

12

1862

Акопов Э.В.

NULL

NULL

NULL

1864

Васильева Е.Ф.

521

2

12

2341

Савицкий В.Б.

321

2

12

NULL

NULL

322

3

18

62

1.8.4. Полусоединение и полувычитание

Полусоединение (semijoin) – это соединение отношений R1 и R2, спроецированное на поля отношения R1. Иначе говоря, результирующее отношение состоит из тех кортежей исходного отношения R1, которые имеют соответствие в исходном отношении R2.

А1

А8

А1 А8

А1 А8

Рис. 43.

Рис. 3.

 

Операция полусоединения

Полусоединение отношений Студент и Комната в общежитии:

Студент имеет комнату в общежитии

 

 

 

 

Номер зачетной книжки

Фамилия и инициалы

Номер комнаты

1393

Иванов А.В.

321

1864

Васильева Е.Ф.

521

2341

Савицкий В.Б.

321

Полувычитание (semiminus) – это вычитание из исходного отношения R1 полусоединения отношений R1 и R2. Иначе говоря, результирующее отношение состоит из тех кортежей исходного отношения R1, которые не имеют соответствия в отношении R2.

63

А1

А8

А1 А8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 44.

 

 

 

 

 

 

Рис. 3.

 

 

 

 

Операция полувычитания

Полувычитание отношений Студент и Комната в общежитии:

Студент не имеет комнаты в общежитии

Номер зачетной книжки

Фамилия и инициалы

Номер комнаты

1862

Акопов Э.В.

NULL

1.8.5. Расширение и обобщение

Расширение (extend) – результирующее отношение эквивалентно исходному, но содержит дополнительное поле, значения которого формируются в результате некоторых вычислений.

Отношение Дисциплина содержит поле Трудоемкость, в котором указано число часов, отводимое на каждую дисциплину в течение семестра. Важным параметром для планирования учебного процесса является недельная загрузка студентов. Учитывая, что в семестре 17 недель, недельная загрузка по дисциплине получается в результате деления трудоемкости на 17 недель.

 

Дисциплина с недельной загрузкой студента

 

 

 

 

Шифр

Название

Трудоемкость

Часов в неделю

ОПД.Ф.10

Базы данных

136

8

СД.Ф.10

Проектирование АСОИУ

170

10

Обобщение (агрегирование, summarize) – результирующее отношение строится в результате проекции исходного отношения на один из атрибутов и удаления дублированных значений. Затем к результи-

64

рующему отношению добавляется еще одно поле, значения которого вычисляются следующим образом:

1)для каждого значения атрибута результирующего отношения из исходного отношения выбираются кортежи с этим значением,

2)на основе выбранных кортежей вычисляется значение, добавляемое в соответствующий кортеж результирующего отношения.

Написано как-то не очень понятно

Вприведенном ниже примере операция обобщения применена для вычисления суммарного рейтинга студентов.

 

 

 

 

Студент имеет оценку по дисциплине

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Номер зачет-

 

 

Фамилия и

 

 

Название

 

 

Оценка

 

 

ной книжки

 

 

инициалы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1393

 

Иванов А.В.

Базы данных

3

 

1864

 

Васильева Е.Ф.

Проектирование АСОИУ

5

 

1864

 

Васильева Е.Ф.

Базы данных

5

 

2341

 

Савицкий В.Б.

Базы данных

5

 

1393

 

Иванов А.В.

Проектирование АСОИУ

3

 

2341

 

Савицкий В.Б.

Проектирование АСОИУ

4

 

 

 

 

 

Суммарный рейтинг студента

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Номер зачетной книжки

Сумма баллов

 

 

 

 

 

 

 

1393

 

6

 

 

 

 

 

 

 

 

1864

 

10

 

 

 

 

 

 

 

 

2341

 

9

 

 

 

 

 

1.8.6. Свойства операций

Строго говоря, минимальный набор операций составляют выборка, проекция, декартово произведение, объединение и разность. Эти операции называются примитивными – через них можно определить (выразить) все остальные. Так, пресечение может быть выражено через операцию разности:

R1 R2 = R1 – (R1 R2),

авнутреннее соединение – через операции декартова произведения

иселекции:

R1 ZY С R2 = σC (R1 × R2).

Операции объединения, пересечения, декартова произведения и

65

соединения ассоциативны и коммутативны. На примере операции объединения ассоциативность означает, что

(R1 R2) R3 = R1 (R2 R3) = R1 R2 R3 ,

а коммутативность

R1 R2 = R2 R1 .

1.9.Целостность данных

1.9.1. Целостность доменов и атрибутов

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

задание логического типа данных, например number, date, string, char и др.;

указание длины поля, точности числа и других характеристик типа данных;

указание формата данных, например NNCCCNN;

указанием, может ли атрибут принимать значение Null; (К. Дейт утверждает, что Null разрушает модель данных)

задание правил, ограничивающих значение атрибута, например

возраст < 150;

агрегатные ограничения, такие как сумма или среднее значение атрибута, например для сущности Сотрудник сумма значений атрибута

Месячная зарплата < 100000;

явное перечисление всех возможных значений домена, например

понедельник, вторник, среда, …, воскресенье;

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

{оформлен, утвержден, принят к исполнению, выполнен, передан заказчику, отменен} запрещен переход от принят к исполнению к передан заказчику, минуя выполнен,

1.9.2. Целостность сущностей и связей

Целостность сущностей (entity constraints) задается следующими правилами:

66

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

ограничением значения одного атрибута в зависимости от значения другого атрибута сущности, например Дата приема заказа < Дата передачи заказчику;

связи:

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

ссылочная целостность (referential integrity constraints) – для каж-

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

каскадное обновление в случае изменения первичного ключа в зависимой сущности

запрещение удаления экземпляров в зависимой сущности

67

Литература

______________________

1.Дейт К.Дж. Введение в системы баз данных. 7-е изд. – М.: Издательский дом «Вильямс», 2001. – 1072 с.

2.Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных. Учебник для вузов / Под ред. А.Д. Хомоненко. – СПб: Корона принт, 2004. – 736 с.

3.Ульман Д.Д., Уидом Д. Введение в системы баз данных. СПб.:

Лори, 2000. – 374 с.

4.Сибилев

4.Райордан Р. Основы реляционных баз данных. – М.: Издатель- ско-торговый дом «Русская редакция», 2001. – 384 с.

5.ГОСТ 34.320-96. Информационные технологии. Система стандартов по базам данных. Концепции и терминология для концептуальной схемы и информационной базы. – М.: Издательство стандартов, 2001

6.Chen P.P.-S. English sentence structure and entity-relationship diagram // Information Sciences. – 1983. – Vol.1, №1. P. 127-149.

7.Chen P.P.-S. The entity-relationship model – toward a unified view of data // ACM Transactions on Database Systems. – 1976. – Vol.1, №. 1. P. 9-36.

8.Chen P.P.-S. English, Chinese, and ER diagrams // Data & Knowledge Engineering. – 1997. – Vol. 23, № 1. P. 5-16.

9.Chen P.P.-S. The entity-relationship model – a basis for the enterprise view of data / Proc. of National Computer Conference. – AFIPS Press, 1977. P. 77-84.

10.Chen P.P.-S. A preliminary framework for entity-relationship models / Entity-Relationship Approach to Information Modeling and Analysis, (edited by P. Chen). – North-Holland: Elsevier, 1983. P. 19-28.

11.Barker R. CASE method: entity relationship modelling. – Reading, MA: Addison-Wesley Professional, 1990.

12.Hoffer J.A., George J.F., Valacich J.S. Modern systems analysis and design (2nd edition). – Upper Saddler River, NJ: Prentice Hall, Pearson Education, 1999.

13.ICAM architecture. Part II, Volume V: Information modeling manual (IDEF1) (AFWAL-TR-81-4023). – Ohio: Air Force Wright Aeronauti-

68

cal Laboratories, 1981.

14.Song I.-Y., Evans M., Park E.K. A comparative analysis of entityrelationship diagrams // Journal of Computer and Software Engineeringю – 1995. – Vol. 3, № 4. P. 427-459

15.Integration definition for information modeling (IDEF1X) (FIPSPUB 184). – Springfield, VA: National Institute of Standards and Technology, 1994.

69