数据库中char与varchar类型的区别
数据库 区别 类型 char varchar
2023-09-14 09:07:48 时间
在建立数据库表结构的时候,为了给一个String类型的数据定义一个数据库的数据库类型,一般参考的都是char或者varchar,这两种选择有时候让人很纠结,今天想总结一下它们两者的区别,明确一下选择塔门的理由。
(1) char的长度是不可变的;
而varchar的长度是可变的,也就是说,定义一个char[10]和varchar[10],如果存进去的是‘csdn’,那么char所占的长度依然为10,除了字符‘csdn’外,后面跟六个空格,而varchar就立马把长度变为4了,取数据的时候,char类型的要用trim()去掉多余的空格,而varchar是不需要的,尽管如此,char的存取数度还是要比varchar要快得多,因为其长度固定,方便程序的存储与查找;但是char也为此付出的是空间的代价,因为其长度固定,所以难免会有多余的空格占位符占据空间,可谓是以空间换取时间效率,而varchar是以空间效率为首位的。
(2)char的存储方式是,对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节;而varchar的存储方式是,对每个英文字符占用2个字节,汉字也占用2个字节,两者的存储数据都非unicode的字符数据。
相关文章
- mysql connectionstrings_「connectionstrings」C#连接数据库时Appsettings 与connectionStrings的区别 – seo实验室…
- 达梦数据库:第一章:MySQL数据库与达梦数据库的区别
- 【Mysql】 输出数据库某字段的数据,如何过滤掉空数据
- Oracle、MySQL和SqlServe三种数据库分页查询语句的区别介绍
- mysql datetime与timestamp区别详解数据库
- mysql中int、bigint、smallint 和 tinyint的区别和长度详解数据库
- oracle中Blob和Clob类型的区别详解数据库
- MySQL类型float double decimal的区别详解数据库
- MySql(三):MyISAM和InnoDB区别详解数据库
- Sybase:delete与truncate、drop区别详解数据库
- oracle VARCHAR2和NVARCHAR2的区别详解数据库
- MySQL Status Performance_schema_locker_lost 数据库状态作用意思及如何正确
- 『Oracle数据库发挥奇效,专家AUL引领众人』(auloracle)
- MySQL与Oracle数据库: 有何不同?(mysql与oracle区别)
- 利用 MySQL 视图工具构建数据库结构(mysql视图工具)
- Oracle数据库中主键和索引的区别和作用(oracle主键与索引)
- Mysql与SQL:两个不同的数据库技术(mysql与sql的区别)
- MySQLOracle和MySQL数据库引擎差异性探究(oracle区别)
- 深入研究MySQL的多数据库查询技术(mysql 多数据库查询)
- Oracle数据库的几个版本比较分析(oracle几个版本区别)
- 温热备份与冷备份Oracle数据库的差异(oracle冷备份区别)
- Oracle数据库中会话与连接的区别(oracle 会话和连接)
- Oracle 数据库中的文本技术应用(oracle中包含文字)
- Redis 与其他数据库的区别(redis跟区别)
- Oracle 199最新特性带来更高数据库性能(oracle 19.9)
- 数据库插入数据之selectintofrom与insertintoselect区别详解