Alex Rivera | Logout

MySQL error: "Column 'columnname' cannot be part of FULLTEXT index"

Asked 2009-03-17T05:14:05.707
16

Recently I changed a bunch of columns to utf8_general_ci (the default UTF-8 collation) but when attempting to change a particular column, I received the MySQL error:

Column 'node_content' cannot be part of FULLTEXT index

In looking through docs, it appears that MySQL has a problem with FULLTEXT indexes on some multi-byte charsets such as UCS-2, but that it should work on UTF-8.

I'm on the latest stable MySQL 5.0.x release (5.0.77 I believe).

Edit
Report

2 Answers

46

Oops, so I have found the answer to my problem:

All columns of a FULLTEXT index must have not only the same character set but also the same collation.

My FULLTEXT index had utf8_unicode_ci on one of its columns, and utf8_general_ci on its other columns.

answered 2009-03-17T05:16:29.930
6

Just to add to Thomas's good advice: And to sort things out in PHPMyAdmin you have to change the characterset for all columns AT THE SAME TIME.

Just wasted half a day trying again and again to change the columns one at a time and continually getting the error message about the FULLTEXT index.

answered 2012-05-09T06:55:57.833

Your Answer