MySQL数据库(10):数据类型-字符串类型

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: MySQL数据库(10):数据类型-字符串类型

字符串类型

char 和 varchar

1、char 定长字符


char(L) L 代表字符数(0-255)


2、varchar 变长字符


varchar(L) L 代表字符数(0-65535)


每个 varchar 数据,都会增加 1-2 个字节来保存数据所占用的空间长度


数据本身小于 127 个字符,额外开销 1 个字节

数据本身大于 127 个字符,额外开销 2 个字节

char 和 varchar 对比, utf8,一个字符都会占用 3 个字节

image.png


image.png

char 和 varchar 区别


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

char 的数据查询效率比 varchar 高,varchar 需要通过后面的记录数来计算

char 和 varchar 选择


如果确定数据的长度,使用 char

不确定数据的长度,使用 varchar

如果数据长度超过 255 个字符,一般使用 text

text 文本类型

text 存储普通的字符文本

blob 存储二进制文件(图片,文件),一般不使用,通常使用一个连接来指向对应的文件


image.png

image.png

注意:


1、不用刻意选择 text 类型,系统会自动根据存储的数据长度来选择合适的文本类型


2、如果数据超过 255 个字符,一定选择 text


MySQL记录长度

MySQL规定:记录长度(record == 行row), 总长度不能超过65535个字节


varchar 能够存储的理论值65535个字符,字符在不同的字符集下可能占用多个字节


varchar处理存储数据本身要占用空间,还需要额外的空间来保存记录长度


证明:varchar在MySQL中能够达到的理论值


utf8 65535 / 3 = 21845,需要2个字节保存长度
gbk 65535 / 2 = 32767...1,需要2个字节保存长度
create table my_utf8(
  name varchar(21844)
) charset utf8;
create table my_gbk(
  name varchar(32766)
) charset gbk;

————————————————

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
关系型数据库 MySQL 存储
【MySQL】——数据类型及字符集
【MySQL】——数据类型及字符集
167 0
【MySQL】——数据类型及字符集
|
1月前
|
关系型数据库 MySQL
Mysql基础第十九天,使用不同类型的链接
Mysql基础第十九天,使用不同类型的链接
25 0
Mysql基础第十九天,使用不同类型的链接
|
1月前
|
供应链 数据库 开发者
深入了解数据库锁:类型、应用和最佳实践
深入了解数据库锁:类型、应用和最佳实践
|
1月前
|
SQL 关系型数据库 MySQL
【MySQL】— —熟练掌握用SQL语句实现数据库和基本表的创建。熟练掌握MySQL的安装、客户端登录方法;熟练掌握MySQL的编码、数据类型等基础知识;掌握实体完整性的定义和维护方法、掌握参照完整性
【MySQL】— —熟练掌握用SQL语句实现数据库和基本表的创建。熟练掌握MySQL的安装、客户端登录方法;熟练掌握MySQL的编码、数据类型等基础知识;掌握实体完整性的定义和维护方法、掌握参照完整性
101 1
|
21天前
|
存储 关系型数据库 MySQL
MySQL数据库性能大揭秘:表设计优化的高效策略(优化数据类型、增加冗余字段、拆分表以及使用非空约束)
MySQL数据库性能大揭秘:表设计优化的高效策略(优化数据类型、增加冗余字段、拆分表以及使用非空约束)
|
1月前
|
弹性计算 安全 关系型数据库
rds网络类型选取
云数据库RDS的网络类型选择包括经典网络、专有网络(VPC)、公共网络和私有网络。推荐使用VPC以实现高安全隔离,私有网络增加安全性且节省公网费用。根据业务需求和安全策略选择,如需内部访问选择同一VPC,外部访问则需公网并配以严格安全措施。最新阿里云RDS建议使用VPC并结合安全组、网络ACL和白名单保障安全,通过CEN实现跨地域通信。
16 7
|
1月前
|
存储 JSON 关系型数据库
【mysql】—— 数据类型详解
【mysql】—— 数据类型详解
|
1月前
|
存储 关系型数据库 MySQL
MySQL中常见的存储引擎类型
【2月更文挑战第18天】
48 7
|
1月前
|
存储 NoSQL 关系型数据库
四种类型的nosql数据库
随着互联网的发展,传统关系型数据库已经不能满足大数据时代的需求。NoSQL数据库应运而生,它们具有高可扩展性、高性能和高可用性等优点。本文将介绍四种主要类型的NoSQL数据库,分别是键值存储数据库、文档存储数据库、列存储数据库和图形数据库。这些数据库在不同的场景下有着不同的应用,可以满足不同的需求。
|
5天前
|
关系型数据库 MySQL 分布式数据库
《MySQL 简易速速上手小册》第6章:MySQL 复制和分布式数据库(2024 最新版)
《MySQL 简易速速上手小册》第6章:MySQL 复制和分布式数据库(2024 最新版)
35 2