Re: Load UTF8@psql into latin1@mysql through JDBC

From: Emi Lu <emilu(at)encs(dot)concordia(dot)ca>
To: Adrian Klaver <adrian(dot)klaver(at)gmail(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Load UTF8@psql into latin1@mysql through JDBC
Date: 2012-12-12 18:06:57
Message-ID: 50C8C7C1.6050705@encs.concordia.ca
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On 12/12/2012 12:47 PM, Emi Lu wrote:
>>> Is there a simple way to load UTF8 data in psql to mysql(with latin1
>>> encoding) through JDBC?
>>
>> This would seem to be dependent on the MySQL JDBC adapter.
>>
>>> From here:
>>
>> http://dev.mysql.com/doc/refman/5.1/en/connector-j-reference-charsets.html
>>
>>
>> "All strings sent from the JDBC driver to the server are
>> converted automatically from native Java Unicode form to
>> the client character encoding, including all queries sent.... "
>
> This does not help. The reason I asked this is because through mybatis +
> JDBC, loading data from psql(at)utf8 to mysql(at)latin1, the french character
> cannot be auto-loaded.
>

JAVA codes work for most of characters, but not "-È". Someone knows why
the following codes cannot load "-È" to mysql(at)latin1?

Thanks a lot!

--

public static String utf8_to_latin1(String str)
throws Exception
{
try
{
String stringToConvert = str;
byte[] convertStringToByte = stringToConvert.getBytes("UTF-8");
return new String(convertStringToByte, "ISO-8859-1");
}catch(Exception e)
{
log.error("utf8_to_latin1 Error: " + e.getMessage());
log.error(e);
throw e;
}
}

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Adrian Klaver 2012-12-12 19:34:39 Re: Load UTF8@psql into latin1@mysql through JDBC
Previous Message Emi Lu 2012-12-12 17:47:17 Re: Load UTF8@psql into latin1@mysql through JDBC