Существует это поле в таблице:«полиморфизм» для FOREIGN KEY ограничений
room_id INT NOT NULL CONSTRAINT room_id_ref_room REFERENCES room
У меня есть три 2 таблицы для двух видов комнат: standard_room
и family_room
Как сделать что-то вроде этого:
room_id INT NOT NULL CONSTRAINT room_id_ref_room REFERENCES standard_room or family_room
Я имею в виду, room_id
должен ссылаться либоstandard_room
илиfamily_room
.
Можно ли это сделать?
Образец, который вы использовали, является хорошим. Он описан Мартином Фаулером как «Наследование класса». Вы можете увидеть сводку в Интернете: http://martinfowler.com /eaaCatalog/classTableInheritance.html. Как предполагает Фаулер, это Q имеет наследование больше, чем полиморфизм. Кроме того, вы использовали метод «общего первичного ключа» для связывания внешних ключей и первичных ключей подкласса вместе. для +1. –