MySQL列类型(字符串类型)——C

本文详细介绍了MySQL中的字符串类型,包括char、varchar、text、enum、set等,分析了它们的特性和适用场景,以及存储长度的限制。对于text类型,区分了不同子类型的实际存储能力。enum和set类型在限制数据范围和节省存储空间方面有独特优势。同时,讨论了MySQL记录长度的最大限制,指出varchar类型的字符限制与字符集有关。
摘要由CSDN通过智能技术生成

char

定长字符:指定长度后,系统一定会分配指定的空间用于存储数据

语法:char(L),L代表字符数(中文与英文字母占用一样),L长度为0-255

 

varchar

变长字符:指定长度后,会根据实际存储的数据来计算长度,分配合适的长度(数据没有超出长度)

语法:varchar(L),L代表字符数,L的长度理论值为0-65535

因为varchar要记录数据长度(系统根据长度自动分配空间),所以每个varchar数据产生后,系统都会在数据后面增加1-2个字节的额外开销,用来保存数据所占有的空间长度

 

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

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

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

 

text

文本类型,本质上没有MySQL提供了两种文本类型

text:存储普通的字符文本

tinytext:系统使用一个字节来保存(数据所在位置),实际能存储的数据为2^8+1(能保存的字符树)

text:使用两个字节保存,实际存储为2^16+2

mediumtext

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值