Наследование таблиц базы данных - PullRequest
0 голосов
/ 02 декабря 2011


Возможно ли, чтобы таблица наследовала множество таблиц?(Я думаю, вот как это должно быть сформулировано: P) Другими словами:

 PersonBase can be PersonA and/or PersonD and/or PersonC

Однако в этом конкретном случае должно быть возможно, чтобы PersonBase существовал несколько раз как PersonD (для этого есть причины), могу ли я сделать это так?Или я должен создать другую таблицу, скажем TableD , такую, что PersonBase будет PersonD , которая имеет отношение один ко многим с TableD .Однако я предпочел бы иметь возможность сделать это так, чтобы PersonBase мог быть кратным PersonDs , если это возможно.

Спасибо всем

PS Прошу прощения, еслимой вопрос кажется наивным.

Ответы [ 2 ]

4 голосов
/ 02 ноября 2012

postgresql имеет фактическое наследование таблиц, как и ООП. Столбцы Базовой таблицы наследуются «вложенными таблицами», она также поддерживает даже несколько базовых классов.

0 голосов
/ 02 декабря 2011

Я думаю, что то, что вы описываете в первом случае, между PersonBase (супертип) и PersonA, PersonC (подтип), является 1:1 отношениями (супертип / подтип), тогда как во втором случае между PersonBase и PersonD, это отношение 1:n.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...