Comment: Re:text versus CLOB (Score 1) 283
like not having to declare varchar sizes versus text versus CLOB versus BLOB.
What's the difference between a text column and a character large object column? MySQL doesn't appear to have distinct types for the two.
Some databases limit the size of text and/or varchar data, so that rows have a limited size. Sybase, for example, used to have a 255 character limit in varchars, and a 2048 byte limit for row size (off the top of my head, details may be wrong.) To store any text larger than 255 characters, the data was effectively stored offline from the row, in a special table, with a reference to the large text in the row.
DB2 also has row size limits, rows not being able to be bigger than ~0.5 the tablespace page size, so this can also require text to be stored offline in LOB tables.
They're all stored and indexed and searchable in the same way (not that you'd want to index any sort of LOB.)
If CLOB is the same thing as text, then why wouldn't you want to support a full-text index on a CLOB? That said, I tend to write my own full-text indexing tools to work around the limitation in MySQL's full-text index: no words shorter than four characters unless you're root, no common English words unless you're root, etc.
I was talking about a table index. As in:
CREATE INDEX foo_idx ON foo(textfield);
This is not the same as a full text index, which generally stores an index row for each distinct word in the source row.