mysql中文问题全处理

发表于:2013-06-03来源:Csdn作者:xyz_lmn点击数: 标签:MySQL
1、在dos环境下,用mysql --default-character-set=gbk -u root -p 这句话进入mysql~~ 2、建数据库、表,如下:

  1、在dos环境下,用mysql --default-character-set=gbk -u root -p 这句话进入mysql~~

  2、建数据库、表,如下:

  create database admin;

  use admin;

  CREATE TABLE admin (

  admin_name char(20) NOT NULL,

  admin_password char(20) NOT NULL

  ) TYPE=MyISAM,

  default character set gbk;

  2, JDBC的设置问题:(这里主要讲的是mysql-connector-java-3.1.8这个JDBC驱动程序而言)

  这只是一个压缩包,并不需要安装,只要将其解压,使用的是文件夹mysql-connector-java-3.1.8里的文件:mysql-connector-java-3.1.8-

  bin.jar.

  需要配置环境变量的是JDBC驱动.在配置前先要把刚才说到的

  mysql-connector-java-3.1.8-bin.jar放到本地硬盘某处(我放的地方:E:/JAVA/MySQLJDBC),然后根据你放的地方,配置classpath,我的

  配置是这样的:

  .;E:/Java/j2se5.0/lib/tools.jar; E:/Java/j2se5.0/lib/mysql-connector-java-3.1.8-bin-g.jar; E:/JAVA/MySQLJDBC/mysql-

  connector-java-3.1.8-bin.jar

  配置这个的目的是让你的java应用程序找到连接mysql的驱动.

  配置完环境变量后还有很重要一步就是为JSP连接数据库配置驱动,这个其实很简单,就是把mysql-connector-java-3.1.8-bin.jar拷到某

  些文件夹里就行了,我在网上看了很多资料问了很多人,各种说法都有,我综合了一下,为了保险,我都全做了,呵呵,反正就是拷一个400K

  的文件而已,现列出要把mysql-connector-java-3.1.8-bin.jar拷进去的文件夹,如下:E:/Java/Tomcat5.0/common/lib

  E:/Java/Tomcat5.0/shared/lib

  一般情况下只要考到Tomcat5.0上面的两个问题夹里面就可以解决问题了,如果需要,也可以将mysql-connector-java-3.1.8-bin.jar这个驱动

  文件拷贝到你的WEB站点的 …/WEB-INF/lib 目录下面。

  3, Eclipse中数据库插件中操作数据库时的中文编码问题:

  当在Eclipse中装上来你所喜欢的数据库插件的时候,都会出现在你查询某一个数据库之后出现记录中的汉字乱码。解决方法很简单,只要在你

  建立数据库连接的时候把URL设置成下面这个样子就可以了:

  URL= jdbc:mysql://localhost:3306/?useUnicode=true&characterEncoding=GBK

  4, 在JSP网页编辑中个人经验:在经过很多的次调试之后,发现在装了myeclipse之后,有这么条小巧:

  ①在用myeclipse编写HTML文件时charset=GBK设置成这个样子,那么在浏览器中浏览时就不会出现乱码; ②而在用myeclipse编辑JSP文件时,

  <%@ page contentType="text/html;charset=GB2312" %>设置成这样子,且这条语句必须是整个JSP文件的第一条语句,就可以避免JSP文件在浏

  览器中显示时出现乱码;

  ③对于如果在JSP网页中要从HTML页面中接收数据,那么在JSP中的接收语句的汉字编码应与数据来源的HTML的汉字编码相同;例如②中的HTML

  的汉字编码为charset=GBK,那么在JSP中的接收语句就应该这样设置:request.setCharacterEncoding("GBK");如果还要将接受的数据插入到

  数据库中(以插入MySQL5.0数据库为例),那么在插入数据库时的汉字编码也应与HTML文件中的汉字编码相同,我的设置如下:con=

  DriverManager.getConnection("jdbc:mysql://localhost:3306/sample_db?

  user=dazern&password=5201314&useUnicode=true&characterEncoding=GBK")这样设置后数据库中的数据才不会乱码.

  以上经验都是在myeclipse3.8.3 Tomcat5.0.28中测试过,没有错误!在此仅供大家借三、数据库存取乱码

  当然,在写数据库时,也要保正数据库的编码与其它一致:

  我们可以在系统盘windows目录下的my.ini文件,在文件中插入一行default-character-set=GBK,但上面说了这么多,大家也应该明白些了吧,

  改动太多的默认设置不是我的风格,因此上,这一行还是不要加的好。

  但不管怎么样,我们还是要创建一个基于中文编码的数据库,当然,用客户端登录的时候,某些客户用自动把字体编码转换成中文编码。在这

  里,我想说一下在DOS下创建中文编码数据库的方法:

  在进入数据库的时候,用mysql --default-character-set=gbk -u root -p 这句话进入mysql,然后创建数据库,如:create database

  admin;这样创建起来的数据库就是基于中文编码的了。

  用连接数据库的时候,读出的数据也可能是乱码,解决这个问题的方法非常简单,只要在你建立数据库连接的时候把URL设置成下面这个样子就

  可以了:URL= jdbc:mysql://localhost:3306/my_database?useUnicode=true&characterEncoding=GBK

  好了,说了这么多,总结一句话结束吧,把各种地方的编码统一起来,那么,所在的乱码问题就都解决了!

  鉴,具体情况还得具体分析!

  文章整理:西部数码--专业提供域名注册、虚拟主机服务

  -------------------

  mysql中文乱码终结

  2008-03-20 13:00

  接下来就是创建数据库,名字为sample

  然后建立一个table: employee,内容如下(其中应该是email,可是我不小心在建数据库打错了,将错就错了):

  +-------------+------------------+------+-----+---------+----------------+

  | Field | Type | Null | Key | Default | Extra |

  +-------------+------------------+------+-----+---------+----------------+

  | employee_id | int(10) unsigned | NO | PRI | NULL | auto_increment |

  | last_name | varchar(20) | YES | | NULL | |

原文转自:http://blog.csdn.net/xyz_lmn/article/details/4170822