1.字符集

# Mysql 的字符集有4个级别的默认设置:服务器级,数据库级,表级和字段级,客户端交互时,也可以指定字符集

# 字符集:是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等

最早的字符集:ASCII码

中国的字符集:gbk,utf8,gbk2312

日本字符集:shift-JIS

韩国字符集:Euc-kr

万国编码:Unicode 字符集

# 常用的字符集:

gbk:一个汉字占用2个字节

utf8:一个汉字占用3个字节

utf8mb4:一个汉字占用4个字节

# 字符集修改要求:

包含关系才可以修改,通常可以从 gbk -> utf8 -> utfm64

而不能反过来,否则某些字符编码会不识别(如 utfm64 中包含表情)

# 查看字符集:

mysql> show charset;

mysql> select * from information_schema.character_sets;

2.校验规则

# Mysql 的校验规则有4个级别的默认设置:服务器级,数据库级,表级和字段级,客户端交互时,也可以指定校验规则

# 查看校验规则:

mysql> show collation;

mysql> select * from information_schema.collations;

| latin7_general_ci | latin7 |

| latin7_general_cs | latin7 |

| latin7_bin | latin7 |

# 校验规则区别

1.以 ci 结尾:不区分大小写

2.以 cs 或者 bin 结尾:区分大小写

# 大小写不同,相同字段也不能添加

mysql> alter table city add nAME varchar(10);

ERROR 1060 (42S21): Duplicate column name 'nAME'

3.设置字符集

# 1.xshell 字符集,在工具类设置

# 2.linux 系统字符集

# 临时修改

[root@db03 ~]# LANG=zh_CN.UTF-8

# 永久修改

[root@db03 ~]# vim /etc/sysconfig/i18n# Centos6

[root@db03 ~]# vim /etc/locale.conf # Centos7

LANG="zh_CN.UTF-8"

# 3.数据库 字符集

1)cmake 字符集指定

cmake .

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EXTRA_CHARSETS=all \

2)配置文件

[root@db03 ~]# vim /etc/my.cnf

[mysqld]

character-set-server=utf8

# 4.创建数据库时指定字符集

mysql> create database db7 charset utf8;

Query OK, 1 row affected (0.00 sec)

mysql> show create database db7;

+----------+--------------------------------------------------------------+

| Database | Create Database |

+----------+--------------------------------------------------------------+

| db7 | CREATE DATABASE `db7` /*!40100 DEFAULT CHARACTER SET utf8 */ |

+----------+--------------------------------------------------------------+

1 row in set (0.00 sec)

# 5.建表时根据库的字符集来建表

mysql> create table tb1(id int);

# 6.指定字符集建表

mysql> create table tb3(id int) charset utf8mb4;

Query OK, 0 rows affected (0.01 sec)

# 7.指定列的字符集

mysql> create table tbtest(name varchar(12) charset latin1);

Query OK, 0 rows affected (0.05 sec)

# 8.修改库的字符集

mysql> alter database db7 charset gbk;

Query OK, 1 row affected (0.00 sec)

# 9.修改表的字符集

mysql> alter table tb2 charset gbk;

Query OK, 0 rows affected (0.00 sec)

Records: 0 Duplicates: 0 Warnings: 0

# 10.修改列的字符集

mysql> alter table student change name name char(24) character set utf8;

Query OK, 6 rows affected (0.03 sec)

Records: 6 Duplicates: 0 Warnings: 0

mysql 字符集 校验规则_MySQL字符集及校验规则相关推荐

  1. mysql字符集详解_MySQL字符集详解

    一.MySQL字符集编码简单介绍 在使用MySQL时要注意6个需要编码的地方:系统的编码.客户端.服务端.库.表.列.字符集编码不仅影响数据存储,还影响client程序和数据库之间的交互.在mysql ...

  2. 简述mysql字符集选择方法_MySQL字符集选择

    一. 怎样选择合适的字符集 对MySQL数据库来说,字符集很重要,因为数据库存储的数据大部分都是各种文字,字符集对数据库的存储,处理性能都会有所影响. 主要考虑一下几方面的因素 1.满足应用支持语言的 ...

  3. mysql提示符详解_MySQL字符集使用详解

    查看字符集相关变量 mysql> show variables like 'character%'; +--------–+-----------+ | Variable_name | Valu ...

  4. mysql字符集相关问题_MySQL 字符集相关问题

    MySQL安装时指定的字符集为UTF8,但是当我向如下表插入汉字时,总是失败(错误字符)! DROP TABLE IF EXISTS t_weather; create table t_weather ...

  5. xp mysql字符集与乱码_mysql字符集(GBK、GB2312、UTF8)与中文乱码的原因及解决

    Mysql乱码问题的原因与解决 MySQL对中文的支持程度还是很有限的,尤其是新手,一旦出现乱码问题,就会头大.下面介绍几种乱码问题的现象原因及解决方法,仅供参考. 乱码问题1:用PHPmyAdmin ...

  6. mysql c 中文字符串_MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法...

    开源数据库MySQL从来都是中小企业构建web应用的首选,特别是和PHP配合简直就是一 对黄金搭档,深受web开发人员的喜爱.但自从4.1以来MySQL加入了多字符集的支持,很多MySQL使用者发现中 ...

  7. mysql连接字符乱码_MySQL 字符集导致SQL连接之后中文乱码的问题!

    character-set-server = GB2312 collation-server = latin1_general_ci MySQL字符集 GBK.GB2312.UTF8区别 解决 MYS ...

  8. mysql 字符集等设置_MySQL字符集设置

    一.MySQL字符集设置 • 系统变量: –character_set_server:默认的内部操作字符集 –character_set_client:客户端来源数据使用的字符集 –character ...

  9. mysql校对规则_MySQL中的校对规则

    详解MySQL中的校对规则 Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is ...

最新文章

  1. 强哥原创管理方法论之“粉丝经济管理学”
  2. Science:若DTC基因检测达2%成年人群,几乎所有人的身份或将无所遁形
  3. Windows 8 应用开发 - 应用栏
  4. ubuntu 安装 CUDA、 cuDNN 的tips
  5. 解决debian下看flash视频很卡的问题
  6. freecplus框架-MySQL数据库操作
  7. 认识C#中的委托和事件
  8. 青岛工学院计算机专业分数线,青岛工学院分数线
  9. Android开发20——单个监听器监听多个按钮点击事件
  10. 编译原理第四章课后题答案
  11. JavaScript运算符优先级需要记吗
  12. 2016SEM行业现状
  13. IDC中国政府行业IT市场2013年10大预测:新型城镇化和第三平台技术推进政府信息化建设
  14. linux 更新etc profile,讲解Linux系统中修改/etc/profile文件的方法
  15. 微商怎么引流?不懂这些就引不来流量!
  16. 西部数据移动硬盘检测与分区
  17. 如何在程序员这条道路上走得更远
  18. hive时间戳格式化HH和hh的区别
  19. 基于显扬科技3D视觉相机的芯片外观检测系统
  20. 优秀广告联盟所应该具备的七大标准

热门文章

  1. 网工视频13第13章.计算机系统开发运行与配置疑难问题
  2. 信息系统项目管理基础(1)
  3. ios如何获取gps坐标(定位第二节)
  4. Android 通过WIFI状态监听广播,判断进入指定wifi范围
  5. Spring IOC容器【p名称空间注入属性值 】
  6. mysql堆溢出_为什么这个MySQL触发器会导致堆栈溢出?
  7. 合并排序算法排序过程_外部合并排序算法
  8. hashmap put方法_Java HashMap put()方法与示例
  9. java外部类_Java里什么叫内部类什么叫外部类
  10. python打印九九加法表_Python小脚本