CHAR 和 VARCHAR 的区别?
1、CHAR的长度是不可变的,而VARCHAR的长度是可变的,也就是说,定义一个CHAR[10]和VARCHAR[10],如果存进去的是‘ABCD’, 那么CHAR所占的长度依然为10,除了字符‘ABCD’外,后面跟六个空格,而VARCHAR的长度变为4了,取数据的时候,CHAR类型的要用trim()去掉多余的空格,而VARCHAR类型是不需要的。
2、CHAR的存取速度要比VARCHAR快得多,因为其长度固定,方便程序的存储与查找;但是CHAR为此付出的是空间的代价,因为其长度固定,所以难免会有多余的空格占位符占据空间,可以说是以空间换取时间效率,而VARCHAR则是以空间效率为首位的。
3、CHAR的存储方式是,一个英文字符(ASCII)占用1个字节,一个汉字占用两个字节;而VARCHAR的存储方式是,一个英文字符占用2个字节,一个汉字也占用2个字节。
4、两者的存储数据都是非unicode的字符数据。
相同点:
char(n),varchar(n)中的n都代表字符的个数
超过char,varchar最大长度n的限制后,字符串会被截断。
不同点:
char不论实际存储的字符数都会占用n个字符的空间,而varchar只会占用实际字符应该占用的字节空间加1(实际长度length,0<=length<255)或加2(length>255)。因为varchar保存数据时除了要保存字符串之外还会加一个字节来记录长度(如果列声明长度大于255则使用两个字节来保存长度)。
能存储的最大空间限制不一样:char的存储上限为255字节。
char在存储时会截断尾部的空格,而varchar不会。
列的字符串类型可以是什么?
字符串类型是:SET、BLOB、ENUM、CHAR、TEXT、VARCHAR
BLOB和TEXT有什么区别?
- BLOB是一个二进制对象,可以容纳可变数量的数据。有四种类型的BLOB:TINYBLOB、BLOB、MEDIUMBLO和 LONGBLOB
- TEXT是一个不区分大小写的BLOB。四种TEXT类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。
BLOB 保存二进制数据,TEXT 保存字符数据。
CHAR 和 VARCHAR 的区别?相关推荐
- mysql中char与varchar的区别分析(补充一句,int和integer没区别)
转自:http://www.jb51.net/article/23575.htm 在mysql教程中char与varchar的区别呢,都是用来存储字符串的,只是他们的保存方式不一样罢了,char有固定 ...
- mysql数据库varchar的区别_MySQL数据库char与varchar的区别分析及使用建议
在数据库中,字符 型的数据是最多的,可以占到整个数据库的80%以上.为此正确处理字符型的数据,对于提高数据库的性能有很大的作用.在字符型数据中,用的最多的就是 Char与Varchar两种类型.前面的 ...
- mysql中char与varchar的区别分析
原文网址:http://www.jb51.net/article/23575.htm mysql中char与varchar的区别分析 作者: 字体:[增加 减小] 类型:转载 在mysql教程中cha ...
- char 和 varchar 的区别,数据库索引B+树
char 和 varchar 的区别 char(n) :固定长度,效率高:缺点:占用空间:存储固定长度的,使用 char 非常合适. varchar(n) :可变长度,存储的值是每个值占用的字节再加上 ...
- 通过char与varchar的区别,学习可变长的字符类型
转自http://www.uphtm.com/database/232.html 在mysql教程中char与varchar的区别呢,都是用来存储字符串的,只是他们的保存方式不一样罢了,char有固定 ...
- MySQL中char与varchar的区别
字符与字节的区别 一个字符由于所使用的字符集的不同,会并存储在一个或多个字节中,所以一个字符占用多少个字节取决于所使用的字符集 注意:char与varchar后面接的数据大小为存储的字符数,而不是字节 ...
- mysql数据库varchar_MySQL数据库char与varchar的区别分析及使用建议
本文主要介绍了mysql中VARCHAR与CHAR字符型数据的差异以及这两种字符型数据在项目中的使用建议,真心不错.值得一看.小编有种受益匪浅的感觉. 在数据库中,字符 型的数据是最多的,可以占到整个 ...
- mysql中char是什么意思_mysql中char与varchar的区别
在建立数据库表结构的时候,为了给一个String类型的数据定义一个数据库的数据库类型,一般参考的都是char或者varchar,这两种选择有时候让人很纠结,今天想总结一下它们两者的区别,明确一下选择塔 ...
- char和varchar的区别、区别的原因以及常用场景举例
一.区别 1.最大长度: char最大长度是255字符,varchar最大长度是65535个字节. 2.定长: char是定长的,不足的部分用隐藏空格填充,varchar是不定长的. 3.空间使用: ...
最新文章
- 不使用加减乘除法,完成两个数的加法
- 开发日记-20190609 关键词 记录一次失败,感悟,畅想未来
- ProxyShell利用分析1——CVE-2021-34473
- 传智杯Java终端有一天您厌烦了电脑上又丑又没用的终端,打算自己实现一个 Terminal
- MySQL - 创建存储过程Procedure,Do While实现循环
- [教程]添加yueue.ADOKeycap数据库组件到您的项目
- 【FTP】org.apache.commons.net.ftp.FTPClient实现复杂的上传下载,操作目录,处理编码...
- chrome插件推荐
- STM8L_库函数-模板搭建
- 无法修改计算机时间权限,无法修改系统时间怎么办
- php web helloworld,webim_server.php
- [Linux]学习笔记3:用户及文件权限管理
- Attributes as Operators
- 保研一年来的心路历程
- C/C++笔试题(很多)
- /Volumes/TeXLive2019/install-tl: No binary platform specified/available, quitting.
- 计算机网络_实验5_集线器与交换机对比
- linux rhel dns配置,RedHat Linux DNS配置指南
- 停车场反向寻车实现方法和算法
- python编程练习:求最大公约数和最小公倍数