Поддерживает ли MySQL наследование таблицы?

У меня есть этот код в PostgreSQL

CREATE TABLE first (
  id serial,
  primary key(id)
);

CREATE TABLE second (primary key(id)) INHERITS (first);

что такое эквивалентный код для MySQL?

1 ответов


MySQL не поддерживает наследование таблицы. Единственный способ приблизить функциональность-использовать внешний ключ (который MySQL тоже не слишком хорош):

CREATE TABLE first (
  id serial,
  PRIMARY KEY (id)
);

CREATE TABLE second (
  parent integer REFERENCES first,
  PRIMARY KEY (parent)
);

очевидно, вам придется изменить любые представления и запросы из "версии наследования" PostgreSQL на обычные запросы с несколькими отношениями.