Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Слияние общих сущностей из отдельных локальных моделей

Анализ имен связей

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

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

· слияние сущностей с одинаковыми именами и первичными ключами;

· слияние сущностей с одинаковыми именами, но с различными первичны­ми ключами;

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

Слияние сущностей с одинаковыми именами и первичными ключами. Как правило, сущности с одним и тем же первичным ключом представляют один и тот же объект ре­ального мира и, следовательно, должны быть слиты. Объединенная сущность будет включать все атрибуты сливаемых сущностей, за исключением дублирующихся. Так, в листинге 8.1 перечислены атрибуты, связанные с двумя сущностями, носящими имя Staff, которые определены в двух различных представлениях, названных View1 и View2. В обоих случаях первичным ключом является атрибут Staff_No. Слияние этих сущно­стей осуществляется путем объединения их атрибутов, поэтому в сводной сущности Staff будут присутствовать все атрибуты исходных сущностей. Отметим, что в данном случае имеет место конфликт, связанный со способом представления в каждой из ис­ходных сущностей имени работника. В подобной ситуации, прежде чем выбрать' необ­ходимый способ представления конфликтных данных, следует (по возможности) про­консультироваться с пользователями каждого из исходных представлений. Обратите внимание, что в нашем примере было выбрано развернутое представление атрибута Name, т.е. разделение его в сводной сущности на атрибуты FName и LName.

Листинг 8.1. Слияние сущностей Staff из представлении View1 и View2

 

(Представление View1)

Staff (Staff No, Name, Position, Sex, Salary, Branch_No)

Primary Key Staff_No

Foreign Key Branch No references Branch(Branch No)

{Представление View2)

Staff (Staff_No, FName, LMame, Address, Branch_No)

Primary Key Staff_No

Foreign Key Branch No references Branch (Branch No)

 

(Глобальное представление)

Staff (Staff_No, FName, LName, Address, Position, Sex, Salary, Branch_No)

Primary Key Staff_No

Foreign'Key Branch_No

references Branch(Branch_No)

Слияние сущностей с одинаковыми именами, но с различными первичными клю­чами. В некоторых ситуациях могут быть обнаружены две сущности с одним и тем же именем, те которых используются различные первичные ключи, однако имеются одинаковые потенциальные ключи. В этом случае сущности сливаются аналогично тому, как это было сделано в предыдущем варианте. Дополнительно потребуется вы­брать в результирующей сущности первичный ключ, объявив все остальные ключи альтернативными. В листинге 8.2 перечислены атрибуты двух сущностей Staff, оп­ределенных в двух различных представлениях под именами View1 и View2. Первич­ным ключом сущности Staff из представления Viewl является атрибут Name, а пер- '• вичным ключом сущности Staff из представления View2 — атрибут Staff No. Однако в сущности Staff из представления View1 определен альтернативный ключ Staff No, a в сущности Staff из представления View2 — альтернативный ключ (FName, LName). Хотя первичные ключи в каждой из исходных сущностей различны, первичный ключ сущности Staff из представления View1 является альтернативным ключом сущ­ности Staff из представления View2, и наоборот. Сущность, полученная в результате слияния двух исходных сущностей, аналогична результирующей сущности, пред­ставленной в листинге 8.1, однако в ней следует дополнительно определить альтер­нативный ключ (FName, LName).

Листинг 8.2. Слияние эквивалентных сущностей с различными первичными ключами

{Представление View1)

Staff (Staff No, Name, Position, Sex, Salary, Branch_No)

Primary Key Name

Alternate Key Staff_No

Foreign Key Branch_No references Branch(Branch_No)

 

[Представление View2)

Staff (Staff_No, FName, LName, Address, Branch_No)

Primary Key Staff_No

Alternate Key FName, LName

Foreign Key Branch_No references Branch (BranchJto)

 

(Глобальное представление)

Staff (Staff_No, FName, LName, Address, Position, Sex, Salary, Branch_No)

Priaary Key Staff_No.

Alternate Key FName, LName

Foreign Key Branch_No references Branch (Branch_No)

Слияние сущностей с различными именами, имеющих одинаковые или различные первичные ключи. В некоторых случаях можно обнаружить сущности, которые име­ют различные имена, но предназначены для одной и той же Цели. Подобные эквива­лентные сущности можно распознать по их именам, которые будут указывать на их сходное назначение, по их содержанию и по их первичным ключам. Кроме того, их можно распознать по участию в определенных связях. Типичным примером подобной ситуации является наличие в моделях сущностей с названиями Staff (Персонал) и Employee (Работник), которые, по сути, являются эквивалентными и должны быть слиты в единую сущность

<== предыдущая лекция | следующая лекция ==>
Анализ имен сущностей и их первичных ключей | Проверка корректности внешних ключей
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 273; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.