All string types are equivalent as far as your SQL is concerned; the only difference is how much data they can store. You can see a comparison of the size requirements of all the types here
. Like you say, VARCHAR
can only up to 255 characters. LONGTEXT
can hold up to 4GB of data, assuming you have the available disk space. You're probably fine with a MEDIUMTEXT
, which holds up to 16MB, and it will only cost you two more bytes per record than VARCHAR
. And obviously, using larger fields frees you of worrying about artificially splitting and combining text.
If you're not doing this for the Perl experience but just want a working site, you can steal the GPL'ed Slashcode.