原因:liquibase.exception.JDBCException:
Error executing SQL ALTER TABLE `User` ADD CONSTRAINT `fk_user_location` FOREIGN KEY (`location_id`) REFERENCES `Location`(`id`) ON DELETE CASCADE:
Caused By: Error executing SQL ALTER TABLE `UserLocation` ADD CONSTRAINT `fk_user_location_location_id` FOREIGN KEY (`location_id`) REFERENCES `Location`(`id`) ON DELETE CASCADE:
Caused By: Can't create table 'usiapp_db.#sql-399a_177a7' (errno: 150)
最佳答案
你不能。如果要为其创建外键或从中创建外键,则必须将 MyISAM 表转换为 InnoDB:
ALTER TABLE MyIsamTable ENGINE=InnoDB;
您可以动态地执行此操作,而无需关闭数据库。
关于java - 如何将 FK 约束放在 mysql 中的两个表上,一个表是 InnoDB,另一个是 MyISAM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15017660/