赤色烙印 发表于 2018-10-3 12:23:21

mysql:如何让mysql支持中文gbk字符集

在mysql数据库中,使用的是latin字符集,所以无法正常的支持中文字符,中文在数据库中显示为乱码“?”号。为了让mysql可以正常使用中文,尤其是当使用jsp连接mysql的时候,我们需要使用gbk的字符集,因此我们要对mysql进行以下设置,以便其有效的支持中文:
1.修改my.cnf文件
  my.cnf文件是mysql的配置文件,我们可以从mysql的安装目录根据其自带模板来
建立
  #cp /usr/local/mysql/support-files/my-huge.cnf/etc/my.cnf
  #vi /etc/my.cnf
  在此文件中相应位置加入
  default-character-set = gbk
  ########################
  
  default-character-set = gbk
  
  default-character-set = gbk
  #########################
  修改结束以后,保存,然后使用客户端登录
  #mysql -u root -p
  在客户端中输入
  >status;
  显示的数据中如果出现:
  Server characterset:    gbk
  Db   characterset:    gbk
  Client characterset:    gbk
  Conn.characterset:    gbk
  则表示修改成功。
2.建立库表时指定gbk字符集
  在建立库表的时候我们需要指定gbk字符集
  建立数据库:
CREATE DATABASE dbname DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci
  建立数据表
  Create table tablename(
  id int(10) unsigned NOT NULL AUTO_INCREMENT,
  name varchar(15) NOT NULL default '',
  PRIMARY KEY(id)
  ) TYPE=MyISAM DEFAULT CHARACTER SET gbk
建立好以后,在客户端中使用:
  >show cereate table tablename;
  如果最后一行显示gbk,则表示成功
3.修改jdbc驱动
  jsp连接mysql需要使用jdbc驱动,在使用的时候,我们需要设置好字符集
  String user="root";
  String password="123";
  String url="jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=gbk"
  Class.forNname("com.mysql.jdbc.Driver");//装载驱动类;
  Connection con=DriverManager.getConnection(url,user,password);//取得连接
  其中dbname为你数据库的名字,url中的gbk即为使用的字符集

  做好以上三步以后,mysql就可以支持gbk中文了。

页: [1]
查看完整版本: mysql:如何让mysql支持中文gbk字符集