Show variables like ‘character%’;  //显示目前mysql默认 字符集

显示数据连接字符集

修改字符集

D:\mysql>Net stop mysql   //停止MYSQL

方法:修改my.ini

在安装文件夹中把my-dafault.ini改成my.ini

[mysqld]

port=3306

Character_set_server = utf8

修改完后,重启mysql的服务

Show variables like ‘character%’;  //显示目前mysql默认 字符集

还有一种修改mysql默认字符集的方法,就是使用mysql的命令

  1. mysql> SET character_set_client = utf8 ;
  2. mysql> SET character_set_connection = utf8 ;
  3. mysql> SET character_set_database = utf8 ;
  4. mysql> SET character_set_results = utf8 ;
  5. mysql> SET character_set_server = utf8 ;
  6. mysql> SET collation_connection = utf8 ;
  7. mysql> SET collation_database = utf8 ;
  8. mysql> SET collation_server = utf8 ;

一般就算设置了表的mysql默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:

  1. SET NAMES 'utf8';

它相当于下面的三句指令:

  1. SET character_set_client = utf8;
  2. SET character_set_results = utf8;
  3. SET character_set_connection = utf8;

修改已有表的字符集为utf8

alter table t_user_friend convert to character set utf8;

修改数据库字符集:

ALTER DATABASE
db_name DEFAULT CHARACTER SET character_name [COLLATE ...];

把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:

ALTER TABLE tbl_name CONVERT TO CHARACTER SET character_name [COLLATE
...]

如:ALTER TABLE logtest CONVERT TO CHARACTER SET utf8
COLLATE utf8_general_ci;

只是修改表的默认字符集:

ALTER TABLE tbl_name DEFAULT CHARACTER SET character_name
[COLLATE...];

如:ALTER TABLE logtest DEFAULT CHARACTER SET utf8 COLLATE
utf8_general_ci;

修改字段的字符集:

ALTER TABLE tbl_name CHANGE c_name c_name CHARACTER SET character_name [COLLATE
...];

如:ALTER TABLE logtest CHANGE title title
VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci;

查看数据库编码:SHOW CREATE DATABASE db_name;

查看表编码:SHOW CREATE TABLE
tbl_name;

查看字段编码:SHOW FULL COLUMNS
FROM tbl_name;

最新文章

  1. C语言指针,你还觉得难吗?
  2. iOS---TextView显示HTML文本
  3. 异常总结<经典例题>
  4. VGG-19 和 VGG-16 的 prototxt文件
  5. [翻译][Trident] Trident state原理
  6. 简单的div元素拖拽到div
  7. Sonar入门(一):简介
  8. 如何在windows的DOS窗口中正常显示中文(UTF-8字符)
  9. 开源ERP Odoo仓存功能模块深度应用(一)
  10. UOJ#375. 【ZJOI2018】迷宫
  11. django中models field详解
  12. [Web Service] Tutorial Basic Concepts
  13. 【repost】js window对象属性和方法相关资料整理
  14. elasticsearch 口水篇(4)java客户端 - 原生esClient
  15. 【AtCoder】ARC098题解
  16. 初学者必读之AJAX简单实例2
  17. Billman_ford货币升值——正权回路
  18. [翻译] VENCalculatorInputView
  19. New Concept English Two 13 31
  20. TCP的几个状态(SYN/FIN/ACK/PSH/RST)

热门文章

  1. 【unity】EventSystem.current.IsPointerOverGameObject()报空指针错误的解决
  2. Spring Cloud 2022.0.1 Spring Cloud Zookeeper4.0
  3. RocketMQ - 生产者启动流程
  4. T-SQL——将字符串转换为多列
  5. Lucky Tree
  6. 使用vscode编辑markdown
  7. 通过手动创建hibernate工厂,自动生成表,完成数据库备份还原功能
  8. Python实战项目5-Git远程仓库/分支合并/冲突解决
  9. sqlserver生成指定的序列
  10. 数据库多表连接查询中使用group by分组语句,Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'XXX' which is not functionally dependent on columns in GROUP BY claus