mysql中utf8_bin、utf8_general_ci、utf8_general_cs编码区别
转载地址: https://www.cnblogs.com/exmyth/p/3616672.html
在mysql中存在着各种utf8编码格式,如下表:
1)utf8_bin
2)utf8_general_ci
3)utf8_general_cs
utf8_bin将字符串中的每一个字符用二进制数据存储,区分大小写。
utf8_genera_ci不区分大小写,ci为case insensitive的缩写,即大小写不敏感。
utf8_general_cs区分大小写,cs为case sensitive的缩写,即大小写敏感。
现在假设执行如下命令:
create table test_bin (
name varchar(32) not null primary key,
age int unsigned not null
) engine = InnoDB COLLATE=utf8_bin;
以上命令能够执行成功。
create table test_ci (
name varchar(32) not null primary key,
age int unsigned not null
) engine = InnoDB COLLATE=utf8_general_ci;
以上命令能够执行成功。
create table test_cs (
name varchar(32) not null primary key,
age int unsigned not null
) engine = InnoDB COLLATE=utf8_general_cs;
在5.6.10版本中,以上命令执行失败,不支持utf8_genral_cs。
insert into test_bin values('Alice', 18);
以上命令能够执行成功。
insert into test_bin values('alice', 18);
以上命令能够执行成功,因为utf8_bin是以十六进制方式存储数据,两条记录的主键不重复。
insert into test_ci values('Alice', 18);
以上命令能够执行成功。
insert into test_ci values('alily', 20);
以上命令执行失败,因为utf8_general_ci不区分大小写,两条记录的主键重复。
转载于:https://www.cnblogs.com/zjl8455482/p/9322966.html
mysql中utf8_bin、utf8_general_ci、utf8_general_cs编码区别相关推荐
- 【038】MySQL中varchar与char的区别以及varchar(50)中的50代表的涵义?
♣题目部分 MySQL中varchar与char的区别以及varchar(50)中的50代表的涵义? ♣答案部分 (1).varchar与char的区别区别一,定长和变长char 表示定长,长度固定, ...
- mysql''和null,mysql中NULL和null的区别
接触php的web开发一段时间了,在进行数据库操作的时候经常会遇到一个问题,使得同一字段在页面显示时有3种类型NULL,null以及数字,当时的解决办法是将这一字段定义为varchar类型,在插入数据 ...
- Mysql中的count()与sum()区别
Mysql中的count()与sum()区别 首先创建个表说明问题 CREATE TABLE `result` ( `name` varchar(20) default NULL, `subject` ...
- MySQL中interactive_timeout和wait_timeout的区别
2019独角兽企业重金招聘Python工程师标准>>> 在用mysql客户端对数据库进行操作时,打开终端窗口,如果一段时间没有操作,再次操作时,常常会报如下错误: ? 1 2 3 E ...
- mysql中的blob和text区别
mysql中的blob和text区别 经过查询资料发现 除了blob 还有tinyblob longblob mediumblob 当然text还有tinytext mediumtext longte ...
- mysql中char与varchar的区别分析
原文网址:http://www.jb51.net/article/23575.htm mysql中char与varchar的区别分析 作者: 字体:[增加 减小] 类型:转载 在mysql教程中cha ...
- mysql中where和and的区别
本文来说下mysql中where和and的区别 文章目录 概述 内连接的时候 左外连接的时候 本文小结 概述 多表查询语法结构:table_reference {[INNER] JOIN | {LEF ...
- MySQL中In与Exists的区别
MySQL中In与Exists的区别 1 例子 2 EXISTS和IN的介绍 2.1 exists 2.2 in 2.3 使用上的区别 3 EXISTS和IN的性能分析 4 总结 1 例子 有两个表需 ...
- MySQL中distinct和distinctrow的区别
引用官方文档的内容MySQL中distinct和distinctrow的区别 原文:The ALL and DISTINCT modifiers specify whether duplicate r ...
- mysql中now,curdate,curtime,sysdate区别
//mysql中now,curdate,curtime,sysdate区别 1.now 返回的时间,格式如下:2013-01-17 10:57:13 mysql> select now(),sl ...
最新文章
- C语言数据结构学习用单元测试
- linux多进程编程计算圆周率,中值积分定理计算PI值的多线程实现
- Plain text, flat file, 及flat-file database 如何翻译
- PMP读书笔记(第12章)
- PyTorch 学习笔记(一):让PyTorch读取你的数据集
- cocoslua与android交互,cocos2dx 获取手机屏幕分辨率 objective-c android 和 Lua 交互 向lua 传参...
- 老司机 iOS 周报 #37 | 2018-09-24
- truffle version/usr/local/lib/node_modules/truffle/build/385.bundled.js:65232 catch cli.bundled.js:6
- 看看别人用什么:最佳网管工具点评
- matlab基于视频的车流量检测,基于视频的车流量统计——matlab代码.docx
- 基于Java的进销存管理系统 附:源码课件
- android 截图工具 mac,在Mac上截屏的三种方法 | MOS86
- 【绕口令】打南边来了个喇嘛(转载)
- The command ‘docker‘ could not be found in this WSL 2 distro.
- 犹太人一直被誉为高智商的民族——那么犹太人天生就很聪明吗?听听他们自己的解释:...
- R语言使用grid包的unit函数将数据对象转化为有计量单位的数据(例如转化为毫米单位、长度单位mm)
- cass等距离等分线段的命令键_cass线段怎么等分命令是什么
- node抓取王者荣耀英雄资料库
- 一张图解决为什么校外访问不了学校购买的中国知网
- Verilog基础知识3(门控时钟及FPGA时钟使能处理)
热门文章
- 用户控件和服务器控件的数据绑定
- sqlserver查询一个表的字段信息
- 使用存储过程更新数据库!成功了但是返回值为 -1 的变态问题的解决办法!
- linux的tar中ztvf,linux中的tar命令(2)
- php ajax 概率 转盘,php+jquery实现转盘抽奖 概率可任意调
- leetcode 解压缩_谁说 Python 的 shutil 不支持 7z 解压缩,我来教你扩展它的功能!...
- zipfile java 解压速率,使用java.util.ZipFile在同一层次中解压缩zipfile
- 南京大学计算机考研机试,2018南大CS考研机试答案
- HTML表格颜色按条件填充,Excel单元格能否根据条件填充颜色?
- Java在linux新建png_教你如何使用libpng显示PNG图片