mysql字符集

Posted 李先生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql字符集相关的知识,希望对你有一定的参考价值。

系统环境:CentOS Linux release 7.4.1708 (Core)

mysql版本:5.6.11
 
场景:新装的数据库,创建数据库,创建数据表后,插入中文数据报错
 
 
解决过程:
 
1、修改配置文件 my.cnf 添加以下三个   
  
[mysqld]
character_set_server = utf8

[mysql]
default-character-set=utf8

[client]
default-character-set=utf8
 
2、重启数据库,在命令行查看字符集是否更改为utf8
 
 
 
3、原来创建的数据库和数据表都需更改字符集
   
1)数据库更改字符集 
alter database database_name default character set utf8;
 
     
2)查看数据库信息    
show create database database_name;
 
 
3)数据表更改字符集     
alter table table_name default character set utf8;
 
 
4)查看创建数据表信息   
show create table student_message;

 

 
      
4、到这里为止,插入中文字符还是会报错,因为数据表的列的字符集没改变
      
1)还得把列的字符集更改过来
alter table table_name change filed_name filed_name char(10) character set utf8  
 
 
2)全部改好后,可插入成功
 
 
  
总结:也就是说从库到表,从表到列的字符集都得改过来。
 

以上是关于mysql字符集的主要内容,如果未能解决你的问题,请参考以下文章

带有神秘附加字符的 Javascript Date getTime() 代码片段

从mysql的片段中加载ListView

连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段

2021-12-24:划分字母区间。 字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。返回一个表示每个字符串片段的长度的列表。 力扣763。某大厂面试

21个常用代码片段

使用 json rereiver php mysql 在片段中填充列表视图