1
原因:liquibase.exception.JDBCException:如何把FK約束兩個表在MySQL與InnoDB的一個表,另一個是MyISAM的
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)
這很有用。但是如果我想在我的表格列上添加SPATIAL索引會怎麼樣。因爲InnoDB不支持SPACIAL索引。因此,如果我使用InnoDB創建更改表,我必須釋放SPATIAL索引。所以我們可以有SPATIAL索引和FK兩種! – kedar 2013-02-22 06:50:24
目前你不能同時擁有(外鍵和空間索引),這太糟糕了。所以你必須選擇。對於一些可能的解決方法參見[如何獲得空間索引功能如果我主要使用InnoDB(http://dba.stackexchange.com/questions/19306/how-do-i-get-spatial-index-feature-if- I-主要使用-InnoDB的)。 – Perception 2013-02-22 06:56:52
是的。這太糟糕了。謝謝! – kedar 2013-02-22 06:59:35