Наследование (INHERIT) в PostgreSQL отличается от обычного присоединения таблиц тем, что создаёт постоянную связь между новой дочерней таблицей и родительской. docs.arenadata.io Изменения родительской схемы распространяются на дочернюю таблицу, и данные дочерней таблицы включаются в сканирование родительской. docs.arenadata.io
С помощью INHERIT можно:
- Объединять столбцы из нескольких родительских таблиц. docs.arenadata.io postgrespro.ru Если в определениях родительских и дочерней таблиц встретятся столбцы с одним именем, эти столбцы будут «объединены», так что в дочерней таблице окажется только один столбец. postgrespro.ru Чтобы такое объединение было возможным, столбцы должны иметь одинаковый тип данных, в противном случае произойдёт ошибка. postgrespro.ru
- Наследовать все ограничения CHECK и NOT NULL родительской таблицы. docs.arenadata.io Другие типы ограничений (UNIQUE, PRIMARY KEY и FOREIGN KEY) не наследуются. docs.arenadata.io
Таким образом, INHERIT позволяет создавать таблицы без связи первичного и внешнего ключа. dbtut.com