2014-08-29 2 views
0

У меня есть 3 таблицы. Мне хотелось бы в третьей таблице убедиться, что пара ключей в этой таблице присутствует во втором.Возможно ли создать пару «внешних ключей»? - SQL

CATEGORY 
idc 

-

CHILD_CATEGORY 
idcc 
c_category_id 

-

PLACE_CHILD_CATEGORY 
idp 
p_category_id 
p_child_category_id 

Я хотел бы знать, если я могу создать ссылку, которая гарантирует, что.

PLACE_CHILD_CATEGORY (p_category_id, p_child_category_id) сочетание существует в CHILD_CATEGORY (idcc, c_category_id)

Где:

p_child_category_id == idcc

и др

p_category_id == c_category_id

Любой способ сделать это?

+0

Просто зайдите в Google для «SQL JOIN 3 TABLES» и поместите свои ограничения в предложения «WHERE». (У вас может быть более 1 ограничения.) – Pieter21

+0

Спасибо за помощь. Но, я выберу предложение о дисках, потому что я хочу ограничение непосредственно на табличное примечание для результатов поиска. – Delphine

ответ

1
ALTER TABLE PLACE_CHILD_CATEGORY 
    ADD FOREIGN KEY PLACE_CHILD_CATEGORY_fk (p_category_id, p_child_category_id) 
    REFERENCES CHILD_CATEGORY (c_category_id, idcc) 

Дополнительная информация: Using FOREIGN KEY Constraints; ALTER TABLE Syntax

+0

Это так просто? Большое спасибо. – Delphine