Dear Andrus, first of all, thanks a lot for your patience.
I have created a new database using character set utf-8, and colletion utf8... Then i set the following variables: SET character_set_server = utf8; SET character_set_client = utf8; SET character_set_db = utf8; now the "status" command gives me: Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 then i create a test table: create table prova ( id_prova int(11) NOT NULL auto_increment, description longtext, PRIMARY KEY (id_prova) ) character set utf8; and I have filled it with utf8 data. and now.... ... ... it works!!!!!!!!!!!! As a test, I try to fill the test table with the data in the old table, and I get the same wrong situation because they are latin1. The point, like you told me, is that the data in my old table are not utf8, I hope to be able to convert them... Thanks for everything Marco On 6/3/07, Andrus Adamchik <[EMAIL PROTECTED]> wrote:
On Jun 2, 2007, at 9:43 PM, marco turchi wrote: > | summary | longtext | utf8_general_ci | YES | > | description | longtext | utf8_general_ci | YES | I believe the third column is "collation", not "encoding"; so encoding is still "latin". > My idea is that the data are encoding UTF8 inside the table, but when > Cayenne creates a connection, all the data that pass through that > connection are encoding latin1. Is it right? Disclaimer *** : I've never tried the advise below myself, only found it in MySQL docs. So I suggest taking a full MySQL dump from your production DB, loading it to an offline test DB, and trying it there first, before applying to production. With ALTER DATABASE and ALTER TABLE you can change the default database charset and a default table charset on MySQL 5.0: http://dev.mysql.com/doc/refman/5.0/en/alter-database.html http://dev.mysql.com/doc/refman/5.0/en/alter-table.html Be careful with various ALTER TABLE charset options. According to the docs there are different ways to address a number of related but distinct charset conversion issues. You need to pick the one that is appropriate for you. So definitely do it on a test DB first. Good luck! Andrus
