当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : mysql 显示中文问题,--------我心中永远的痛!!!
帖子发表于 : 2009-07-23 21:38 

注册: 2009-07-21 20:40
帖子: 12
送出感谢: 0 次
接收感谢: 0 次
     ubuntu里面到底要怎么设置中文嘛,我都试了好多方法了,都没有成功,朋友们,帮帮我啊

   有人说在  /etc/mysql/my.cnf这个文件编辑一下,然后在里面[client]和[mysqld]下面加一字话
   但是我也加了,都不成功,是我方法没有对吗?  我是个菜菜,希望说详细一点,谢谢你们了 :em06
  
   是不是mysql里面设置 了UTF8,那我的JSP代码里面也只有用UTF8 友友们,帮帮我


页首
 用户资料  
 
2 楼 
 文章标题 : Re: mysql 显示中文问题,--------我心中永远的痛!!!
帖子发表于 : 2009-07-24 16:12 
头像

注册: 2008-11-05 21:04
帖子: 181
送出感谢: 0 次
接收感谢: 0 次
在Java里面用的都是Unicode,所以数据库里面用什么编码是有关系的。当然数据库里面也用Unicode(UTF-8)的话的确能够避免乱码问题。但是数据冗余要大一点。推荐数据库使用GB2312编码,数据库连接时指定用GB2312编码,这样应该能够解决问题。


_________________
路人网 和身边的人一起畅聊吧 http://luren.com


页首
 用户资料  
 
3 楼 
 文章标题 : Re: mysql 显示中文问题,--------我心中永远的痛!!!
帖子发表于 : 2009-08-30 22:40 

注册: 2009-01-03 12:40
帖子: 10
送出感谢: 0 次
接收感谢: 0 次
select a.dbactno,a.merchno,
c.merchname,
b.tranamt,b.hostdate,b.hosttime,
c.bankno
from Toldjournal A
where a.HostDate >= '090711' AND a.HostDate <= '090722'
and a.retcode = '00000'
and a.status = '0'
and a.transtype = '1'
and count(a.dbactno)>=10
and sum(a.tranamt)>=1000
group by a.dbactno, a.merchno
inner join toldjournal B on a.merchno =b.merchno and a.dbactno = b.dbactno
inner join Tmerchant C on a.merchno = c.merchno


页首
 用户资料  
 
4 楼 
 文章标题 : Re: mysql 显示中文问题,--------我心中永远的痛!!!
帖子发表于 : 2009-09-10 15:37 

注册: 2009-09-09 15:53
帖子: 24
送出感谢: 0 次
接收感谢: 0 次
我考,这个问题我也搞了几天,这是我的心得,

11.1 mysql乱码的问题
1.在终端输入命令 sudo gedit /etc/mysql/my.cnf在打开的文件中
找到[client]在下面加入
default-character-set=utf8
找到 [mysqld_safe]在下面加入
default-character-set=utf8
找到[mysqld]在下面加入
default-character-set=utf8
init_connect='SET NAMES utf8'
找到[mysql]在下面加入
default-character-set=utf8

2.(为了安全起见这一步最好执行)在终端输入命令 mysql -u root -p
提示你输入密码: 你的root用户的密码
进入到mysql输入命令set names utf8 //这里只可以是utf8不可以是utf-8,因为linux下的mysql不认识utf-8。

3.重启mysql命令以便让你上面的修改生效
sudo /etc/init.d/mysql restart

4.检查mysql字符集
命令 一:show variables like 'character%'; 出现
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

命令二:show variables like "collation_%"; 出现
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
到此数据库的字符集配置已经完成,当前你在本地的dos窗口创建数据库插入或者查询中文就已经没有问题了!但是
如果连接linux下的mysql通过调用本地的cmd命令执行.sql文件建库或者建表插入数据等操作仍然还是乱码这时
就需要注意!下面是解决办法!
5.这是我hibernate.cfg.xml里面的配置:
<property name="myeclipse.connection.profile">SERVER</property>
<property name="connection.url">jdbc:mysql://192.168.0.6:3306/WishCMS?useUnicode=true&amp;amp;characterEncoding=GBK&amp;amp;autoReconnect=true</property>

<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
注意在连接的后面加上useUnicode=true&amp;amp;characterEncoding=GBK&amp;amp;autoReconnect=true
基本上就解决了连接linux下的mysql通过调用本地的cmd命令执行.sql文件建库或者建表插入数据等操作仍然还是乱码的问题,
如果还出现乱码的话,程序中建数据库的时候就需要指定数据库的默认字符集:
6.建库指定默认字符集
CREATE DATABASE sample
CHARACTER SET utf8
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci
DEFAULT COLLATE utf8_general_ci ;
7.在程序中执行.sql脚本创建数据表的时候也必须指定默认字符集为GBK,格式如下:(这一步很关键,也是必须的,而且我当时并不能指定为utf8
,只能是GBK!)
Runtime rt = Runtime.getRuntime();
Process child = rt.exec("mysql -h "+server+" -u"+user1+" -p"+pwd1+" "+database+" --default-character-set=GBK");
到此乱码问题就已经解决了!

我现在在ubuntu8.10安装oracle知道的请出来交流一下


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译