美文网首页
MYSQL创建数据库时候直接指定编码和排序规则

MYSQL创建数据库时候直接指定编码和排序规则

作者: JasonQiao | 来源:发表于2016-08-02 15:10 被阅读566次

mysql创建数据库时指定编码很重要,很多开发者都使用了默认编码,但是我使用的经验来看,制定数据库的编码可以很大程度上避免倒入导出带来的乱码问题。我们遵循的标准是,数据库,表,字段和页面或文本的编码要统一起来。
很多mysql数据库工具(除了phpmyadmin,我偶尔用,功能强速度慢)都不支持创建时指定数据库编码,当然可以改my.ini来解决这个问题,但是需要重新启动mysql,不过用下面的语句会更有效

GBK: create database test2 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
UTF8: CREATE DATABASE test2 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

注意:如果不是通过my.ini配置文件设置的内容,只在当前状态下有效,当重启数据库服务后失效。所以如果想要不出现乱码只有修改my.ini文件,数据库编码可以在创建数据库时候指定UTF8,如下:

|character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8

注意该配置| character_set_server | latin1 无法设置成UTF8交互时候仍然会出现乱码。只有当修改my.ini中设置UTF8,才会全部修改成UTF8


mysql设置编码命令

SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;//这里要注意很有用
SET character_set_server = utf8;

SET collation_connection = utf8_bin;
SET collation_database = utf8_bin;
SET collation_server = utf8_bin;

my.ini中配置默认编码
default-character-set=utf8

连接数据库设置编码
jdbc:mysql://192.168.0.5:3306/test?characterEncoding=utf8

java与mysq编码对应
java中的常用编码UTF-8;GBK;GB2312;ISO-8859-1;
对应mysql数据库中的编码utf8;gbk;gb2312;latin1

相关文章

  • MYSQL创建数据库时候直接指定编码和排序规则

    mysql创建数据库时指定编码很重要,很多开发者都使用了默认编码,但是我使用的经验来看,制定数据库的编码可以很大程...

  • 漫话:如何给女朋友解释为什么不能在 MySQL 中使用 UTF-

    MySQL是一种关系型数据库,这个大家肯定都不陌生,使用MySQL创建数据库的时候,大家需要指定一种编码方式。 很...

  • JPA自动生成mysql表中文问题

    如果用JPA自动生成表的时候,创建的数据库没有指定编码格式(默认编码格式latin1),那么mysql对中文并不支...

  • 第08期:有关 MySQL 字符集的注意事项

    本文关键字:字符集、建库建表 一、数据库和字符集 1、建库时指定 ​创建数据库时,显式指定字符集和排序规则,同时,...

  • MySQL高级

    mysql安装配置 mysql配置,修改字符集编码是用于当我们创建数据库时,没有指定数据字符集编码类型时,就会用配...

  • java Exception thrown flushing c

    向MySQL中添加数据,包含中文字符会出现以下错误. 原因: 未在数据库该字段设置编码格式和排序规则.

  • 2.数据库和表结构的操作

    1.MySQL分类 2.数据库操作 ①创建一个数据库 ②创建一个数据库,并指定编码标准 ③查看已有的数据库 ④使用...

  • mysql乱码解决方案

    本文包含了乱码的解决方案,和编码规则的选择方案以及mysql数据库编码规则的转换 mysql不乱码的终极方案 1....

  • 如何创建MySql数据库

    一般我们创建mysql数据库,首先需要做的事,是选择“字符集”,然后选择“排序规则”。 字符集:utf8排序规则:...

  • Mysql 操作详解

    修改mysql密码 在创建数据库时,指定数据库的编码 查看数据表设置( 字段名称和类型) 查询时,如果某个字段存在...

网友评论

      本文标题:MYSQL创建数据库时候直接指定编码和排序规则

      本文链接:https://www.haomeiwen.com/subject/buwfsttx.html