=========================================================================

字符集和编码规则

字符集:特定类型或用途的字符集合,为集合中每个"字符"分配一个唯一的ID值(Code Point)

编码规则:将字符集中的字符按照其对应的ID值转换为字节系列的规则(编码和解码)
UNICODE是字符集,而UTF和UTF16以及UTF32属于编码规则。 ASCII编码:American Standard Code for Information Interchange,美国信息互换标准代码,使用1字节8Bit来存放2的8次方255个字符。
GB2312:在ASCII编码的基础上进行扩展,收录6000+常用汉字,形成GB2312编码
GBK:在GB2312的基础上扩展,收录繁体和不常用汉字以及各种字符,形成GBK编码
GB18030:在GBK的基础上扩展,收录各名字的独立的字符,最终形成GB18030
UNICODE: 全球标准化组织ISO统一对全球各种文字和字符进行编码形成的字符集。
UTF8:基于UNICODE字符集,以8Bit为一个编码单位的可变长编码规则,最新UTF8将每个Unicode字符编码为1到4字节长度。
UTF16:基于UNICODE字符集,以16Bit为一个编码单位的可变长编码规则,最新UTF16将每个Unicode字符编码为2个或4个字节长度。

=========================================================================

Unicode字符集与UTF-8编码

Unicode编码与UTF-8的编码的对应关系:
Unicode编码 UTF-8编码(二进制)
U+0000 – U+007F 0xxxxxxx
U+0080 – U+07FF 110xxxxx 10xxxxxx
U+0800 – U+FFFF 1110xxxx 10xxxxxx 10xxxxxx
U+10000 – U+10FFFF 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 一个字节的uft8表示的unicode 码范围为(0 ~0x7F)
两个字节长度的uft8 表示的unicode码范围为(0x80 ~ 0x07FF)
三个字节长度的uft8 表示的unicode码范围为(0x0800 ~ 0xFFFF)
四个字节长度的uft8 表示的unicode码范围为( 0x10000 ~ 0x10FFFF)

=========================================================================

MySQL的UTF8和UTF8MB4

MySQL 与UTF8
在MySQL刚开发时,Unicode字符集还不够完善,MySQL使用只支持最长三字节的UTF8字符集便可以存放所有Unicode字符。
随着Unicode的完善,Unicode字符集收录的字符数量越来越多,最新版本的UTF8需要使用1到4个字节来存放Unicode字符。
MySQL为保持版本兼容,依旧使用最多3字节的UTF8字符集,因此MySQL中的UTF8不能完全兼容最新的UTF8版本,导致很多生僻字符和网络表情无法正常存储到MySQL中。 为兼容最新的UTF8字符集,在MySQL 5.5.3版本引入UTF8MB4字符集。

=========================================================================

MySQL字符集查看和修改

#改表的字符集为UTF8
ALTER TABLE TBName CONVERT TO CHARACTER SET utf8; #看字符集对应的默认排序规则
SHOW CHARACTER SET LIKE 'utf8' \G #查看当前字符编码的设置
SHOW VARIABLES LIKE 'character_set%' \G #查看每列的字符集
SHOW FULL COLUMNS FROM TB_Name \G

MySQL--字符集基础的更多相关文章

  1. mysql字符集基础知识梳理

    接着上一篇继续来一篇关于mysql字符设置等问题学习笔记,这篇就不说什么废话了,直接进入正题,不过还是感谢十八哥的无私分享! 我们首先看看mysql整个数据存储和读取一个流程: 连接器(connect ...

  2. (3.16)mysql基础深入——mysql字符集

    (3.16)mysql基础深入——mysql字符集 关键字:mysql字符集,mysql编码 目录 1.概念 2.常用的字符编码 3.查看mysql字符集 [3.1]查看服务器支持的字符集 [3.2] ...

  3. mysql 开发基础系列14 字符集

    字符集是一套文字符号及其编码,比较规则的集合.第一个字符集是ascll(american standard code for information interchange).  1.  选择合适的字 ...

  4. 2020重新出发,MySql基础,MySql字符集

    目录 MySQL字符集和校对规则详解 MySQL字符集的转换过程 MySQL查看字符集和校对规则 MySQL设置默认字符集和校对规则 服务器字符集和校对规则 数据库字符集和校对规则 表字符集和校对规则 ...

  5. mysql使用基础 sql语句(一)

    csdn博文地址:mysql使用基础 sql语句(一)  点击进入 命令行输入mysql -u root -p,回车再输入密码,进入mysql. 终端命令以分号作为一条语句的结束,可分为多行输入,只需 ...

  6. 查看mysql字符集及修改表结构--表字符集,字段字符集

    MySQL 乱码的根源是的 MySQL 字符集设置不当的问题,本文汇总了有关查看 MySQL 字符集的命令.包括查看 MySQL 数据库服务器字符集.查看 MySQL 数据库字符集,以及数据表和字段的 ...

  7. 2.Mysql SQL基础

    2.Mysql SQL基础2.1 SQL简介 SQL(Structure Query Language)是结构化查询语言.2.2 SQL使用入门 2.2.1 SQL分类 SQL分为DDL.DML(DQ ...

  8. MySQL字符集 GBK、GB2312、UTF8区别 解决 MYSQL中文乱码问题 收藏 MySQL中涉及的几个字符集

    MySQL中涉及的几个字符集 character-set-server/default-character-set:服务器字符集,默认情况下所采用的.character-set-database:数据 ...

  9. MySQL从删库到跑路(二)——MySQL字符集与乱码解析

    作者:天山老妖S 链接:http://blog.51cto.com/9291927 一.字符集与编码 1.字符集简介 字符(Character)是各种文字和符号的总称,包括各国家文字.标点符号.图形符 ...

  10. 【笔记】MySQL的基础学习(二)

    [笔记]MySQL的基础学习(二) MySQL 老男孩  一 视图 视图其实就是给表起个别名 1.创建视图 格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS ...

随机推荐

  1. zabbix安装部署(server部分)

    Linux下常用的系统监控软件有Nagios.Cacti.Zabbix.Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员. 今天开始研究下Zabbix,使 ...

  2. python中的各种模块(np,os,shutill)

    PS:本博文摘抄自中国慕课大学上的课程<Python数据分析与展示>,推荐刚入门的同学去学习,这是非常好的入门视频. #np模块 .ndim :维度 .shape :各维度的尺度 (2,5 ...

  3. bootstrap 下拉选中查询

    <div class="form-group"> <label class="col-lg-3 col-sm-2 control-label" ...

  4. windows消息传送(自定义消息和WM_COPYDATA)

    通过SendMessge实现的进程间通信. 0x01 自定义消息 1,WINDOWS中自定义消息的定义和使用: (1)在WNDOWS中消息分系统消息和自定义消息.系统消息定义从0到0x3FF,使用0x ...

  5. SharePoint REST API - 概述

    博客地址:http://blog.csdn.net/FoxDave SharePoint REST API不同于传统的Server Object Model和Client Object Model ...

  6. java.lang.NoSuchMethodError: org.springframework.web.context.ConfigurableWebApplicationContext.getEnvironment()Lorg/springframework/core/env/ConfigurableEnvironment;问题

    在springsecurity学习中,在加入spring有关的jar包后,出现java.lang.NoSuchMethodError: org.springframework.web.context. ...

  7. [转]JavaScript与元素间的抛物线轨迹运动

    在张鑫旭的博客看到这个抛物线的小动画,觉得很感兴趣,转载一下方便研究~ 原文地址:http://www.zhangxinxu.com/wordpress/?p=3855 在页面上添加元素的位移动画,除 ...

  8. 转 linux常用查看硬件设备信息命令

    转载自:http://blog.chinaunix.net/uid-26782198-id-3242120.html 系统 # uname -a               # 查看内核/操作系统/C ...

  9. 强化学习论文(Scalable agent alignment via reward modeling: a research direction)

     原文地址: https://arxiv.org/pdf/1811.07871.pdf ======================================================== ...

  10. 解决Python2.7的UnicodeEncodeError: ‘ascii’ codec can’t encode异常错误

    更改 sys.defaultencoding 为文件的编码方式  #! /usr/bin/env python  # -*- coding: utf-8 -*-  import sys  reload ...