OS: windows XP
数据库版本:Mysql5.0
JDBC驱动版本:5.0
Ruby 版本:1.8.6
情况描述: 在Windows下安装 Mysql时选择字符编码“utf-8”
EMS SQL MANAGER 2005 下,数据库设置默认编码,插入N条数据。
用Ruby从数据库查询数据,中文显示正常。
但是在mysql命令行,执行select 查询,中文都是乱码。并且insert语句无法插入中文。
命令行输入“set names utf8”,结果同上。
命令行输入“set names GB2312”, insert A 成功执行。select,除了A计录显示正常,其余都是乱码。
问题: 1、Window下 install Mysql 时,数据库设置什么编码比较合理?
2、如果数据库编码是“utf-8”,insert语句可能插入的数据中文编码可能是 "gb2312",也可能是"utf-8",这种情况怎么解决或者避免?
3、Mysql编码是"utf-8",使用Ruby插入中文数据,默认好像都是“utf-8”,在用Ruby读取,打印,中文显示正常。但是用JDBC驱动读取的中文都是乱码。怎么保证两者兼容?
在论坛翻了一会没有找到具体解决办法。希望解答的同志有一个系统的讲解。