为什么我的Mysql front显示的数据是乱码??

genggjh 2005-01-14 05:55:51
我安装完mysql front后,连接到mysql数据库查看有中文的数据库表为什么都是乱码呀?
在命令行下直接连到mysql数据库中显示都是正常的。
换了好几个版本的mysql front,包括汉化版的,都不行。
高手请指教。谢谢!
...全文
640 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
iwillsw 2005-01-22
  • 打赏
  • 举报
回复
我也遇到这个问题,不过已经解决了,有两种方法。
数据库是mysql4.1.8,驱动是jdbc3.1.6
建表用默认字符集latin1
连接串用jdbc:mysql://192.168.1.3/test?useUnicode=true&characterEncoding=gbk

建表用字符集gbk
连接串用jdbc:mysql://192.168.1.3/test?useUnicode=true

读汉字字符和写汉字字符时需要转换:
例如:new String(rs.getString("fname").getBytes("ISO8859-1"), "gbk")
goldflute 2005-01-21
  • 打赏
  • 举报
回复
可以使用"navicat"试试,下载网址:www.navicat.com
用toad for mysql可能也会出现你说的问题.此工具不行换一个就行了,
没必要在这里钻牛角尖.
前几天我也碰到这个问题.另外在用JDBC时最好先不要用JConnector的高版本,对中文支持也有问题.
Mysql的Client很多,可以多试也个.
sinp 2005-01-18
  • 打赏
  • 举报
回复
换个低版本的mysql吧。我开始用的no install的mysql4.1.8 跟你一样的问题,数据库里看的好好的,dump出来就是有问题,后来到mysql.com去下了一个3.24的,就没问题了
genggjh 2005-01-18
  • 打赏
  • 举报
回复
那为老大能帮忙解决呀。
genggjh 2005-01-18
  • 打赏
  • 举报
回复
ft,mysql3.x好多特性都没有了,难道大家都是这样使用的吗?
mathematician 2005-01-17
  • 打赏
  • 举报
回复
先看在my.ini文件中的设置:
default-character-set= ?
然后检查有乱码的数据表:
SHOW CREATE TABLE tblName;
点击查询结果中的<BLOB>会出现建表SQL语句,最后的
DEFAULT CHARSET=?
两者是否一样?
另外,如果你改过字符集,原来数据表中的数据就会变成乱码,你新插入一条中文数据,然后查询刚插入的这条数据,看看是不是乱码?
genggjh 2005-01-17
  • 打赏
  • 举报
回复
mathematician(数学家),我怎样做,才能改成一致的
pwtitle 2005-01-17
  • 打赏
  • 举报
回复
主要是数据表的字符级文件,不是mysql-front问题。
genggjh 2005-01-17
  • 打赏
  • 举报
回复
mathematician(数学家),现在的问题是,为什么default-character-set是utf8,DEFAULT CHARSET也是utf8,而在mysql-front中输入中文后结果根本就保存不到数据库中,那个字段被清空了??
mathematician 2005-01-17
  • 打赏
  • 举报
回复
你改变了字符集,在原来字符集下的输入中文自然就变成了乱码。不过你可以通过
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;来转换它。
genggjh 2005-01-17
  • 打赏
  • 举报
回复
faint,我将default-character-set改成了gb2312后,mysql-front中没有乱码了,插入中文也正常了。
但是在但在命令行下登录mysql,select却发现在mysql-front中插入的数据都变成了乱码??
晕了。
genggjh 2005-01-17
  • 打赏
  • 举报
回复
我在mysql-front中新建了一个表,字符集用的是默认的utf8,输入中文后结果根本就保存不到数据库中,那个字段被清空了??
但在命令行下登录mysql,在上面新建的表中插入中文字段,然后select却可以显示出中文来。
mathematician 2005-01-17
  • 打赏
  • 举报
回复
不用改,utf8就行。你用mysql-front新建一个表,然后输入中文,看看还是乱码吗?
genggjh 2005-01-17
  • 打赏
  • 举报
回复
mathematician(数学家) ,我发现我的mysql的my.ini中default-character-set=utf8
SHOW CREATE TABLE test的结果是:
CREATE TABLE `test` (
`test` varchar(20) NOT NULL default ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8
,我是不是必须都改成gb2312,才不会有乱码??
mathematician 2005-01-14
  • 打赏
  • 举报
回复
字符集问题,你用
SHOW CREATE TABLE tblName;
最后有默认编码的信息。如果跟你的编码设置不一致就会出现乱码。
genggjh 2005-01-14
  • 打赏
  • 举报
回复
我的mysql数据库版本是4.1。
mysql front的版本是3.1,已经破解过了。

56,687

社区成员

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

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