在字段上添加索引键

时间:2015-01-29 19:38:06

标签: sql

我使用以下内容在我的表字段中添加FULLTEXT和INDEX,如下所示:

CREATE FULLTEXT INDEX searchindex ON Entries(title, tags, entry);

但我在表格中添加了另一个字段(关键字),我还需要添加FULLTEXT和INDEX。我添加了FULLTEXT但是我没有添加INDEX所以现在我收到错误:找不到与列列表匹配的FULLTEXT索引。

我尝试在事后加入INDEX,这就是我用的运气:

ALTER TABLE Entries ADD INDEX searchindex(keywords);

给出错误:#1170 - 密钥规范中使用的BLOB / TEXT列'关键字'没有密钥长度

感谢任何帮助。不知道如何解决这个问题。

2 个答案:

答案 0 :(得分:0)

如果没有指定索引长度,则无法通过TEXT / BLOB列定义索引:

BLOB和TEXT列也可以编入索引,但必须给出前缀长度。

逻辑上 - 因为这些数据类型代表了大量数据,因此无法通过整个字段创建索引。

所以我认为应该通过指定列的长度来改变关键字列,如text(50)。

答案 1 :(得分:0)

我必须删除INDEX,然后为所有必填字段重新创建INDEX。

ALTER TABLE Entries DROP INDEX searchindex;