Fix "The used table type doesn't support FULLTEXT indexes" (ERROR 1214 (HY000))
กระทู้เก่าที่เก็บไว้อ่าน · หน้านี้ไม่รับข้อความใหม่
เมื่อแก้ไข tables engine ไปเป็น InnoDB แล้วติดปัญหาเรื่อง FULLTEXT index เหมือนตัวอย่าง
ERROR 1214 (HY000): The used table type doesn't support FULLTEXT indexes
ให้ตรวจสอบดูโครงสร้างตารางด้วยคำสั่ง เพื่อหาว่ามี index ชื่ออะไรที่เป็น FULLTEXT เพื่อที่จะได้ลบทิ้ง สาเหตุที่ลบทิ้งเพราะว่า InnoDB ไม่ support FULLTEXT index
SHOW CREATE TABLE table1;
CREATE TABLE `table1` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'Coupons Id',
`name` varchar(100) CHARACTER SET utf8 DEFAULT NULL COMMENT 'Coupons Name',
`description` varchar(5000) CHARACTER SET utf8 DEFAULT NULL COMMENT 'Coupons Description',
`date` datetime DEFAULT NULL COMMENT 'Coupons purchase start date',
`status` varchar(3) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `status` (`status`),
FULLTEXT KEY `name` (`name`),
FULLTEXT KEY `description` (`description`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
จากตัวอย่างด้านบนจะเห็นว่ามี FULTEXT index อยู่ 2 ตัวด้วยกันคือ name และ description ดังนั้นให้เรา drop index ที่เป็น FULLTEXT key ออกด้วยคำสั่งด้านล่าง จึงจะสามารถแก้ไข table engine ไปเป็น InnoDB ได้
ALTER TABLE table1 DROP INDEX name;
ALTER TABLE table1 DROP INDEX description;