mysql默认编码问题

在数据库直接插入

insert into t_column(id,innername,outername,parentid,colorder,moduleid)
values(1,'column_1','后台系统',0,1,1);

看样子插入的不能识别的字符,在Mysql安装的时候,默认的是MySQL的默认编码是Latin1,不支持中文,那么如何修改MySQL的默认编码呢,下面以gbk为例来说明(不是项目要求的话,gbk就OK了)

需要注意的是,要修改的地方非常多,相应的修改方法也很多。下面是一种最简单最彻底的方法:

一、Windows
1、中止MySQL服务
2、在MySQL的安装目录下找到my.ini,如果没有就把my-medium.ini复制为一个my.ini即可
3、打开my.ini以后,在[client]和[mysqld]下面均加上default-character-set=gbk,保存并关闭
4、启动MySQL服务

二、Linux
1、中止MySQL服务(bin/mysqladmin -u root shutdown)
2、在/etc/下找到my.cnf,如果没有就把MySQL的安装目录下的support-files目录下的my-medium.cnf复制到/etc/下并改名为my.cnf即可
3、打开my.cnf以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并关闭
4、启动MySQL服务(bin/mysqld_safe &)

---------------------------下面的方法是对旧数据库默认编码修改-------------------------------------------------

1. 打开C:/Program Files/MySQL/MySQL Server 5.0/my.ini

在[client]下面寻找default-character-set,然后将其值修改为:
default-character-set=utf8
若找不到default-character-set,加上上面一行即可。

[mysqld]同理:
default-character-set=utf8
init_connect='SET NAMES utf8'


下面语句用于查看编码方式是否已经修改:
show variables like 'char%';

2. 附:对于已经存在了的数据库,可以如下操作使其改变编码方式:
a. 修改MYSQL数据库编码,如果是MYSQL数据库编码不正确: 可以在MYSQL执行如下命令:

ALTER DATABASE test DEFAULT CHARACTER SET utf8;  
以上命令就是将MYSQL的test数据库的编码设为utf8
b. 修改MYSQL表的编码:ALTER TABLE category DEFAULT CHARACTER SET utf8;
以上命令就是将一个表category的编码改为utf8
c. 修改字段的编码:
ALTER TABLE `test` CHANGE `dd` `dd` VARCHAR( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL
以上命令就是将MYSQL数据库test表中 dd的字段编码改为utf8

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值