In my opinion, I would not want to come up. If you need more than 255 characters, use another TEXT option.
Update: VARCHAR is now limited to 65535 bytes, but a string in MySQL cannot contain more than 65535 bytes.
You should know that VARCHAR and similar fields are stored directly in your database, when, for example, TEXT is stored, print a line followed by a pointer inside the line that refers to it.
So, if you want to use a large VARCHAR, make sure that they will not be too large and will not interfere with the rest of the data in the row.
For example, having mutltiple VARCHAR fields that can contain up to 65K char would be a bad idea.
Marc-François
source share