#1214 – 使用的表types不支持FULLTEXT索引
我得到一个错误,说这个表types不支持FULLTEXT索引。 我怎样才能做到这一点?
这是我的桌子:
CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ;
*
在MySQL 5.6全文search之前, 仅支持MyISAM引擎。
因此,将表格的引擎更改为MyISAM
CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ENGINE=MyISAM;
这里是SQLFiddle演示
或升级到5.6并使用InnoDB全文search。
这个问题是由于表types错误而产生的。MyISAM是Mysql支持全文索引的唯一types的表。
要纠正这个错误,运行下面的sql。
CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ENGINE=MyISAM;
只有MyISAM允许FULLTEXT,如下所示。
尝试这个:
CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ENGINE=MyISAM;
*************解决 – #1214 – 使用的表types不支持FULLTEXT索引***************
它很简单,以解决这个问题。 人们在这里用非技术性的人难以理解的非常困难的话来回答。
所以我在这里提到非常简单的步骤将解决您的问题。
1.)用记事本打开你的.sql文件,方法是右键单击文件>编辑或者简单地打开记事本文件,然后将文件拖放到记事本中,文件将被打开。 (注意:请不要更改文件的扩展名.sql,因为它仍然是你的sql数据库。还要保留你的sql文件的副本,以防止任何混淆)
2)点击记事本菜单编辑>replace(一个窗口将popup我们的查找和replace字段)
3.)在查找什么字段中inputENGINE = InnoDB &Inreplace字段inputENGINE = MyISAM
4.)现在点击全部replacebutton
5.)点击CTRL + S或文件>保存
6.)现在上传这个文件,我相信你的问题将得到解决….