Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Identifying relationship / 6 сообщений из 6, страница 1 из 1
10.06.2004, 16:59
    #32556683
Alex Zdraste
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Identifying relationship
Подскажите плизз почему при создании сабжа, в child таблицу переносятся все FK parent таблицы ?.
...
Рейтинг: 0 / 0
10.06.2004, 17:03
    #32556693
olk
olk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Identifying relationship
Может PK ? и где это происходит ?
...
Рейтинг: 0 / 0
10.06.2004, 17:36
    #32556803
Alex Zdraste
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Identifying relationship
Среда ERWin
Есть три сущности:

E/1(PK:E1_ID)
E/2(PK:E2_ID)
E/3(PK:E3_ID)

Создаю identify relationship - E/1 -* E/2, в E/2 получается E/2(PK:E2_ID, FK:E1_ID).

Создаю identify relationship - E/2 -* E/3, в E/3 получается E/3(PK:E3_ID, FK:E2_ID, FK:E1_ID).

Интересует зачем FK:E1_ID в E/3 ?
...
Рейтинг: 0 / 0
10.06.2004, 18:07
    #32556914
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Identifying relationship
ИМХО Identify Relationship, в отличие от Non-Identify , добавляет поле в первичный ключ сущности. Соответственно, в E/3 уже переносятся все поля первичного ключа из E/2.
...
Рейтинг: 0 / 0
11.06.2004, 00:06
    #32557284
Константин Лисянский
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Identifying relationship
Identifying relationship - это когда первичный ключ сущности полностью мигрирует в дочернюю сущность.
После создания первой идентифицирующей связи ПК первой сущности мигрировал во вторую. Стало быть, первичный ключ во второй стал составным. Теперь куда бы Вы не делали идентифицирующую связь из второй сущности, её ПК будет целиком мигрировать в дочерние сущности.
Совершенно нормальное явление.

Создаю identify relationship - E/1 -* E/2, в E/2 получается E/2(PK:E2_ID, FK:E1_ID).
Я думаю, что FK:E1_ID, он ещё и часть PK при этом. Оба над чертой, правильно? Значит ПК - составной.

Думаю, чтение стандарта всё объяснит. Или доки по ERWin почитайте. Там тоже про это пишут.


С уважением,
Константин Лисянский
http://lissianski.narod.ru
...
Рейтинг: 0 / 0
11.06.2004, 03:12
    #32557305
ChA
ChA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Identifying relationship
Идентифицирующая связь говорит о том, что для однозначной идентификации
подчиненного detail-объекта требуется идентификатор master-объекта. В
результате, идентификатор master-объекта мигрирует в primary key detail-объекта.
В противном случае, связь считается неидентифицирующей, так как она
является лишь ограничением, которое накладывается на допустимые
значения некоторого(ых) атрибута(ов) объекта.
Типичным примером идентифицирующей связи является связь типа
"Документ_имеет_Позиция документа" между соответствующими таблицами.
Если бы идентификатор(ключ) из таблицы Документ не мигрировал в
таблицу Позиция документа, то невозможно было бы определить, какому
документу принадлежит позиция, или, наоборот, какие позиции принадлежат
документу.
Примером неидентифицирующей связи может служить связь типа
"Документ_связан_Партнер". Таблица партнеров не определяет документ, а
всего лишь описывает допустимые значения атрибута "Партнер" в таблице
"Документ".
Несколько утрированно, но надеюсь понятнее :)
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Identifying relationship / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]