当前位置: 代码迷 >> MySQL >> MySQL编码设置步骤
  详细解决方案

MySQL编码设置步骤

热度:446   发布时间:2016-05-05 16:17:54.0
MySQL编码设置方法

一、设置创建数据库时数据库所使用的编码方式
CREATE {DATABASE|SHECMA} [IF NOT EXISTS] db_name
[DEFAULT] CHARACTER SET [=] charset_name

这里写图片描述

我们默认[ ]里面的内容是可选的,也就是说可写可不写的。还可以选择编码方式,如
[DEFAULT] CHARACTER SET [=] charset_name

这里写图片描述

经过这样的设置之后呢,我们数据库中所使用的编码就是gb2312了,当然你也可以设置其他的编码方式,主要更改charset_name就好了。

二、MySQL服务器能够支持多种字符集
可以使用SHOW CHARACTER SET语句列出可用的字符集:

这里写图片描述
……
ps:关于字符集和校对的知识可以参考官方的参考手册

三、查看和修改MySql数据库、表、表中字段的编码方式
MySQL中,数据库的编码问题比较重要,这里主要讲解了修改数据库编码方式、修改表的编码方式和修改表中某一字段的编码方式,有需要的小伙伴可以参考一下。

1、查看当前数据库的编码和修改数据库编码。
在进行修改数据库编码方式之前,我们可以进行查看数据库编码方式操作。
首先,需要先切换到某一个具体的数据库下(USE db_name),然后再使用Sql语句:
SHOW VARIABLES LIKE ‘ CHARACTER_SET_DATABASE‘;

这里写图片描述

根据显示我们知道abc数据库的编码方式是utf8。
接下来就是修改编码方式了,可以修改数据库编码方式、修改表的编码方式、修改表中字段的编码方式(这…有点凌乱,呵呵呵,上截图)
先说说修改数据库编码方式:
ALTER {DATABASE|SHECMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name

这里写图片描述

可以看到现在数据库abc中的编码方式就由utf8变为了gb2312啦。

2、查看表的编码和修改表的编码
先看看数据库abc中有哪些表,使用Sql语句;
SHOW TABLES:

这里写图片描述

恩,里面有一个mytable表,创建一个数据库之后,数据库里面默认情况下是空空如也,一张表都没有的,那为什么出现表了呢,哈哈,我这是事先创建好的一张表。
然后修改表的编码方式,先查看一下表的编码方式:
介绍两种方式:
方式1:
USE db_name;
SHOW CREATE TABLE table_name;

这里写图片描述

方式2:
USE db_name;
status;

这里写图片描述

数据库abc的表mytable的编码方式是utf8,现在我们修改编码方式:
ALTER TABLE mytable CHARACTER SET gb2312;

这里写图片描述

3、修改表中字段的编码方式:

这里写图片描述

  相关解决方案