在父表上使用后,DROP COLUMN column_name子表中的某些列不会被删除。
如何重新分配具有此行为的列,以便将来正确的级联删除?
如何重现: 有两个表:parent和child。子级继承自父级并具有相同的列。在子项中添加新列test。在父级中添加新列test。之后,test孩子就会从父母那里继承。尝试test从父级中删除 - 期望从子级中级联删除test。但它仍然存在。
CREATE TABLE parent (a INT);
CREATE TABLE child () INHERITS (parent);
ALTER TABLE child ADD COLUMN test_inherit VARCHAR;
ALTER TABLE parent ADD COLUMN test_inherit VARCHAR;
ALTER TABLE parent DROP COLUMN test_inherit;
Run Code Online (Sandbox Code Playgroud) postgresql ×1