请问各位,你们在MySql5.0中,怎么解决中文的问题?

caosheng02 2006-03-19 07:38:58
我用的是MySql5.0和Eclipse3.1,插入中文数据前,我转一下码,成功的插入中文。
但是select的时候,还是乱码,然后转一下码,结果还是显示乱码。
已经把Mysql的默认字符集改成GBK,gb2312都没有效果。
请帮帮忙,谢谢。

用google搜出来的文章,都试过,还是没成功,急死人了,唉。
...全文
212 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
caosheng02 2006-04-20
  • 打赏
  • 举报
回复
各位不好意思,长时间没有上CSDN了。

我的问题最后是通过在代码中转码实现的,就是hy2003fly() 的方法。虽然用了hibernate,但是失去了可移植性,唉。
现在就发分给大家。

QSHENG(Q圣) 的方法,我没有试过,不过值得尝试一下。
terry3411 2006-03-21
  • 打赏
  • 举报
回复
楼主快点放分给大家!!! ^_^
terry3411 2006-03-21
  • 打赏
  • 举报
回复
CREATE DATABASE U_R_database_name DEFAULT CHARACTER SET utf8;

CREATE TABLE U_R_table_name(
...
)
DEFAULT CHARACTER SET utf8;
----------------------------------------------
connection_url:
jdbc:mysql://host_name:3306/[database_name]?useUnicode=true&characterEncoding=utf8
QSHENG 2006-03-21
  • 打赏
  • 举报
回复
其实我们可以这样理解,如果要在mysql数据库中存储和读取中文,则需要mysql服务器,客户端都采用的是支持中文的字符集,这在很多安装mysql的时候可以指定,也可以通过配置my.ini来更改;
但是还有一点大家总是容易忽略,如果用编程语言来连接mysql的数据库,其连接也需要采用支持中文的字符集,如果使用的是odbc连接,则不管是vc连接还是其他脚本语言进行连接,都需要在odbc连接字符串中指定使用的中文字符集;
例如,以最新的mysql-connector-odbc-3.51.12驱动来说,在配置odbc连接的时候,在connection option选项卡的Initial Statement参数处就可以配置为SET NAMES GB2312,这样,通过此odbc连接访问该数据库,写入和读取中文都不会有问题
对于Eclipse3.1也是同样的道理
hy2003fly 2006-03-20
  • 打赏
  • 举报
回复
首先你的数据库字符集全部为GBK,可以用show variables like "%char%";来查看.
然后,读数据出来的时候加上useUnicode=true
即:String dburl="jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=GBK";
试试看行不行,不行的话你就再转一次编码好了
String str=new (String)(str.getBytes("ISO-8859-1"),"GBK");
aniude 2006-03-19
  • 打赏
  • 举报
回复
没用过5.0,帮你UP

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧