博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL修改表、字段、库的字符集及字符集说明
阅读量:4486 次
发布时间:2019-06-08

本文共 1679 字,大约阅读时间需要 5 分钟。

修改数据库字符集:

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;

查看系统的编码字符

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';

MySQL字符集设置

系统变量:

– character_set_server:默认的内部操作字符集– character_set_client:客户端来源数据使用的字符集– character_set_connection:连接层字符集– character_set_results:查询结果字符集– character_set_database:当前选中数据库的默认字符集– character_set_system:系统元数据(字段名等)字符集– 还有以collation_开头的同上面对应的变量,用来描述字符序。

用introducer指定文本字符串的字符集:

– 格式为:[_charset] ‘string’ [COLLATE collation]

– 例如:

• SELECT _latin1 ‘string’;• SELECT _utf8 ‘你好’ COLLATE utf8_general_ci;– 由introducer修饰的文本字符串在请求过程中不经过多余的转码,直接转换为内部字符集处理。

MySQL中的字符集转换过程

  1. MySQL Server收到请求时将请求数据从character_set_client转换为character_set_connection;
  2. 进行内部操作前将请求数据从character_set_connection转换为内部操作字符集,其确定方法如下:

• 使用每个数据字段的CHARACTER SET设定值;

• 若上述值不存在,则使用对应数据表的DEFAULT CHARACTER SET设定值(MySQL扩展,非SQL标准);

• 若上述值不存在,则使用对应数据库的DEFAULT CHARACTER SET设定值;

• 若上述值不存在,则使用character_set_server设定值。

转载于:https://www.cnblogs.com/qiumingcheng/p/10336170.html

你可能感兴趣的文章
Bundle display name 与 Bundle name 的区别
查看>>
MySQL创建外键关联错误 - errno:150
查看>>
谈 jquery中.band() .live() .delegate() .on()的区别
查看>>
POJ 3267 The Cow Lexicon 简单DP
查看>>
线性代数(矩阵乘法):NOI 2007 生成树计数
查看>>
问题 B: 合并车厢
查看>>
linux 下tomcat 开机自启动
查看>>
201521123018 《Java程序设计》第11周学习总结
查看>>
如何配置属于自己的Git账户
查看>>
babel之配置文件.babelrc入门详解
查看>>
u-boot之ARM920T的start.S分析
查看>>
NAND FLASH驱动框架以及程序实现
查看>>
020 RDD的理解
查看>>
【WebApi】————.net WebApi开发(二)
查看>>
Vector
查看>>
Linux Supervisor的安装与使用入门
查看>>
为什么要应用编排,应用编排能做什么?
查看>>
实习生招聘笔试
查看>>
Linux忘记root登录密码解决方法
查看>>
String类的常用方法
查看>>