Top.Mail.Ru
Ответы
Аватар пользователя
12лет
Изменено
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+4

Вопрос по аббревиатурам БД. В базах данных сокращение PK - Primary Key - первичный ключ а FK - это что за ключ?

Дополнен

Слабые (неидентифицируемые) связи. Если одна сущность независима от существования другой сущности, связь между ними называется слабой связью, также называемой неидентифицируемой связью. С точки зрения проектирования БД слабые связи имеют место, если РК связанной сущности не содержит первичные компоненты порождающей сущности. Предположим, что мы определили сущности КУРС и ГРУППА как

КУРС (CRS_CODE, DEPT_CODE, CRS_DESCRIPTION, CRS_CREDIT)

ГРУППА (CLASS_CODE, CRS_CODE, CLASS_SECTION, CLASS_TIME, ..)

В этом случае между сущностями КУРС и ГРУППА есть слабая связь, поскольку атрибут CLASS_CODE является РК сущности CLASS, в то время как атрибут CRS_CODE сущности CLASS является только FK. В данном случае РК сущности ГРУППА не наследует компонент первичного ключа из сущности КУРС. В модели Чена не делается различий между слабой и сильной связями.

Сильные (идентифицируемые) связи. Сильная связь также называемая идентифицируемой связью имеет место, если связанные сущности зависимы от существования порождающей сущности. С точки зрения проектирования базы данных сильная связь между двумя сущностями имеет место всякий раз, когда РК связанной сущности содержит компонент РК порождающей сущности. Например, определения сущностей КУРС и ГРУППА

КУРС (CRS_CODE, DEPT_CODE, CRS_DESCRIPTION, CRS_CREDIT)

ГРУППА (CRS_CODE, CLASS_SECTION, CLASS_TIME, ..и т. д. )

указывают на то, что между сущностями КУРС и ГРУППА есть сильная связь, поскольку составной РК сущности ГРУППА включает в себя CRS_CODE и CLASS_SECTION. (Обратите внимание, что CRS_CODE в таблице ГРУППА является также FK для сущности КУРС ).

Будет ли связь между COURSE и CLASS сильной или слабой, зависит от того, как определен первичный ключ сущности CLASS.

По дате
По рейтингу
Аватар пользователя
Новичок
12лет

foreign key - внешний ключ. Контролирует уникальность значения ключа в связанной таблице. Например, создать запись с повторяющимся или не существующим значением FK, которое указано как PK в той таблице (на которую FK ссылается).