|
Posted by Eli on 04/08/05 07:15
C Drozdowski wrote:
> I need to be able to store UTF-8 characters from a form into a MySQL
> table. But I need to support pre-UTF-8 MySQL (< 4.1).
>
> So I'm converting UTF-8 characters into their numeric entities (e.g. ñ =
> ñ).
>
> The problem is that if the user enters a character that gets converted
> to an entity, the string might end up being longer than the field
> definition in the table allows.
>
> For example, if I have a varchar(5) column and try to insert "señor"
> (which has been converted to "senñor"), I get "sen&#" in the table
> which is useless.
>
> Has anyone dealt with this and if so how?
>
> Thanks in advance for any advice, or pointers to any code that deals
> with this.
You first need to convert to binary charset, and then to the real
charset. Do not convert from current charset to the real charset ahead,
you may cause a data loss.
BEFORE converting - *backup* your databases !!!
http://dev.mysql.com/doc/mysql/en/charset-conversion.html
[Back to original message]
|