Может ли один атрибут иметь два внешних ключа?

Просто делаю некоторую работу с реляционной базой данных. Быстрый вопрос, может ли один атрибут иметь два внешних ключа?

Например, законно ли это:

PERSONAL_RECORDS.Date_of_birth имеет внешний ключ в CASUAL.Date_of_birth, а также внешний ключ в MANAGER.Date_of_birth

По сути, может ли один атрибут иметь внешний ключ из двух других атрибутов?

Заранее спасибо! :)


person Hoops    schedule 05.09.2012    source источник


Ответы (2)


Один столбец может ссылаться более чем на одну таблицу.

create table t1 (
  t1_id integer primary key
);

create table t2 (
  t2_id integer primary key
);

create table t3 (
  t3_id integer primary key,
  foreign key (t3_id) references t1 (t1_id),
  foreign key (t3_id) references t2 (t2_id)
);
person Mike Sherrill 'Cat Recall'    schedule 05.09.2012

На самом деле сложный вопрос, я бы прочитал: http://office.microsoft.com/en-us/access-help/design-the-tables-for-a-new-database-RZ101772996.aspx?section=9 для получения дополнительной информации по этому вопросу. Насколько я помню со школьной скамьи, это невозможно. Но, может быть, есть способ сделать это?

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

Удачи однако :)

person Anders Vedal Pettersen    schedule 05.09.2012
comment
Спасибо за полезные ссылки! - person Hoops; 05.09.2012