mysql char 和varchar的区别?

char 和varchar的区别

1、 char 一定会使用指定的空间,varchar是根据数据来定空间

2、 char的插入数据效率理论上比varchar高:varchar是需要通过后面的记录数来计算

使用哪一种类型?

如果确定数据一定是占指定长度,那么使用char类型;

例如身份证、手机号

如果不确定数据到底有多少,那么使用varchar类型;

如果数据长度超过255个字符,不论是否固定长度,都会使用text,不再使用char和varchar

varchar不同行模式建索引的限制

varchar(250) utf8 751字节 不超过 765字节 行格式: compact , dymanic

varchar(190) utf8mb4 761字节 不超过 765字节

65535-2 65533/3

3072/3 1024

768

mysql 的varchar 会走索引吗?

mysql 的varcahr 和oracle的varchar2的区别?

varchar2是oracle提供的独有的数据类型。

varchar对于汉字占两个字节,对于英文是一个字节,占的内存小,varchar2都是占两个字节。

varchar对空串不处理,varchar2将空串当做null来处理。

varchar存放固定长度的字符串,最大长度是2000,varchar2是存放可变长度的字符串,最大长度是4000.

相关推荐
飞翔的佩奇1 小时前
Java项目: 基于SpringBoot+mybatis+maven+mysql实现的图书管理系统(含源码+数据库+答辩PPT+毕业论文)
java·数据库·spring boot·mysql·spring·毕业设计·图书管理
一 乐2 小时前
基于vue船运物流管理系统设计与实现(源码+数据库+文档)
前端·javascript·数据库·vue.js·spring boot·后端·船运系统
jerry6093 小时前
注解(Annotation)
java·数据库·sql
lwprain4 小时前
springboot 2.7.6 security mysql redis jwt配置例子
spring boot·redis·mysql
vcshcn4 小时前
DBASE DBF数据库文件解析
数据库·dbase
AIGC大时代6 小时前
对比DeepSeek、ChatGPT和Kimi的学术写作撰写引言能力
数据库·论文阅读·人工智能·chatgpt·数据分析·prompt
如风暖阳6 小时前
Redis背景介绍
数据库·redis·缓存
lingllllove7 小时前
Redis脑裂问题详解及解决方案
数据库·redis·缓存
字节全栈_BjO7 小时前
mysql死锁排查_mysql 死锁问题排查
android·数据库·mysql
微光守望者7 小时前
Redis常见命令
数据库·redis·缓存