【发布时间】:2020-08-12 14:26:01
【问题描述】:
当我运行 DROP TABLE 'User' cascade; 时,它不会从其他表中删除引用用户的记录。
如果我运行DELETE FROM 'User',它也会成功地从其他表中删除记录。如何从 DROP TABLE 执行此操作?这很重要。
顺便说一句,如果我在没有级联的情况下运行DROP TABLE 'User',它会告诉我其他表依赖于此,所以请添加级联;
【问题讨论】:
-
我假设您的意思是
DELETE FROM,而不是REMOVE FROM。先做DELETE FROM再做DROP TABLE有什么问题? -
是的,很好的电话,我的意思是删除,客户不想这样做,我真的很感兴趣为什么 DROP 级联也不能按预期的方式工作:/跨度>
-
我猜你在子表的
FOREIGN KEYs上没有ON DELETE CASCADE。 -
当然有,我使用 TypeOrm NestJS 我在具有 OneToOne 和 OneToMany/ManyToOne 关系的子表中尝试了 {cascade: true} 和 onDelete: 'CASCADE',但是当我 DROP表它不会删除它的孩子
标签: mysql postgresql typeorm