Postgresql table inheritance
Feb. 25th, 2010 09:24 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Таки дошли руки почитать про сабжевую фичу постгреса. Вообще, я подумывал его использовать, в том числе и из-за того, что на Firebird и MSSQL я постоянно реализую наследование вручную, чтобы кошерно маппить объекты на базу.
Но судя по описанию оной фичи к использованию она малопригодна - не наследуются pk, fk констрейнты и триггеры, т.е. смысл остается только в том, что при вставке и обновлении не нужно будет возится со всеми таблицами в цепочке наследования.
Но судя по описанию оной фичи к использованию она малопригодна - не наследуются pk, fk констрейнты и триггеры, т.е. смысл остается только в том, что при вставке и обновлении не нужно будет возится со всеми таблицами в цепочке наследования.
no subject
Date: 2010-02-25 11:22 pm (UTC)Для мапинга ООП-наслоедования в базу, в postgresql принято использовать классические методы ( те кто незнают, смотрят http://www.martinfowler.com/eaaCatalog/index.html "Object-Relational Structural Patterns:", хоть там и не все).
Чем тут нам может помочь Postgresql? хм, сложной view-шкой делающей виртуальную STI, если не она выбрана для хранения, плюс возможность иметь один sequence на несколько таблиц, если выбран вариант хранения наследования по нескольким таблицам. Вроде бы пожалуй и всё.
Кстати, PostgreSQL считается полу-ООП базой не за возможности обрабатывать ООП понятия "наследование и тд" - этого она не умеет, а за возможность добавления любых своих типов + за поддержку gist и gin индексов.
no subject
Date: 2010-02-26 10:27 am (UTC)