mysql中的字符串类型有哪些_mysql字符串类型说明

#技术教程 发布时间: 2025-12-20
MySQL字符串类型分五类:CHAR/VARCHAR、TEXT系列、BLOB系列、ENUM/SET及字符集绑定;选型影响存储、性能与完整性,需依长度、内容、用途精准匹配。

MySQL 中的字符串类型主要分为五大类:定长字符串、变长字符串、大文本、二进制大对象、特殊枚举/集合。选对类型直接影响存储效率、查询性能和数据完整性。

定长与变长字符串(CHAR 和 VARCHAR)

CHAR 用于长度固定、变化少的字段,比如身份证号(18位)、手机号(11位)、国家代码等。定义为 CHAR(18) 时,无论存入多少字符,都占满 18 个字符空间,不足部分用空格补齐;读取时 MySQL 自动截去尾部空格。

VARCHAR 更适合长度波动大的内容,如用户名、标题、地址。它只占用实际字符数 + 1 或 2 字节长度标识(超 65535 才用 2 字节)。最大支持 65535 字节(受行总长限制),但注意:UTF8MB4 下一个汉字占 4 字节,所以 VARCHAR(255) 实际最多存约 63 个汉字。

  • CHAR 查询更快(因定长,定位直接),但浪费空间
  • VARCHAR 节省空间,但需额外字节记录长度,索引效率略低
  • 超过 255 字符必须用 VARCHAR,CHAR 最大只支持 255

大文本类型(TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT)

当内容明显超出几百字符,比如文章正文、日志、富文本 HTML,就该用 TEXT 系列。它们不存于主数据页,而是单独分配指针+外部存储块,因此不影响主表行宽,也避免因单行超限(65535 字节)导致建表失败。

四者区别仅在最大容量:

  • TINYTEXT:≤ 255 字节(适合短备注、标签描述)
  • TEXT:≤ 65,535 字节(常用,如博客正文、产品简介)
  • MEDIUMTEXT:≤ 16MB(适合长文档、邮件正文)
  • LONGTEXT:≤ 4GB(极少用,如整本电子书、法律文书原文)

注意:TEXT 类型不能设默认值(除非是空字符串),也不支持前缀索引以外的完整索引(需指定前 N 个字符建索引)。

二进制字符串与大对象(BINARY / VARBINARY / BLOB 系列)

BINARY 和 VARBINARY 是 CHAR/VARCHAR 的二进制对应版,按字节比较、区分大小写、不依赖字符集。适合存加密密钥、token、哈希值等纯字节序列。

BLOB 系列(TINYBLOB / BLOB / MEDIUMBLOB / LONGBLOB)专用于非文本二进制数据,如图片、PDF、音频片段。它们和 TEXT 系列容量一一对应,但不经过字符集转换,也不会被当作字符串处理 —— 不能用 LENGTH() 得到字符数,而要用 OCTET_LENGTH() 或 LENGTH() 查字节数。

  • 不要用 BLOB 存图片路径,用 VARCHAR 就够了;真正要存文件本身才用 BLOB
  • BLOB 列无法参与大多数字符串函数(如 UPPER、CONCAT),需转成 HEX 或 Base64 处理

枚举与集合(ENUM 和 SET)

ENUM 表示单选,值从预定义列表中选一个,如 status ENUM('draft','published','archived')。内部以数字存储(1,2,3…),节省空间且自带约束,但增删选项需 ALTER TABLE,线上慎用。

SET 支持多选,如 permissions SET('read','write','delete','admin'),底层也是位图存储。最多支持 64 个成员,超出会报错。

  • ENUM 和 SET 都依赖字符串字面值,排序按定义顺序而非字母序
  • 插入非法值时,MySQL 默认转为空字符串(严格模式下报错)
  • 导出或迁移时要注意字符集兼容性,避免乱码导致值映射错乱

字符集与排序规则不是类型本身,但和所有字符串类型强绑定。务必统一使用 utf8mb4 字符集 + utf8mb4_0900_ai_ci(或 _as_cs)排序规则,否则 emoji、生僻字、多语言混排会出错。




上一篇 : 三星S24通话断断续续怎么办 三星手机VoLTE设置指南

下一篇 : Vue 过渡(动画)transition组件案例详解

推荐阅读

电话:400 76543 55
邮箱:915688610@qq.com
品牌营销
客服微信
搜索营销
公众号
©  丽景创新 版权所有 赣ICP备2024032158号 
宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 宜昌市隼壹珍商贸有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 内江振祥营销策划有限公司 恩施州毯滚百货有限公司 恩施州毯滚百货有限公司 襄阳市蜂欢商贸有限公司 襄阳市蜂欢商贸有限公司 恩施州换冯百货有限公司 恩施州换冯百货有限公司 恩施州健提百货有限公司 恩施州健提百货有限公司 西安益零商贸有限公司 西安益零商贸有限公司 南奥教育 南奥教育 南奥教育 南奥教育 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南奥教育网 南奥教育网 南奥教育网 南奥教育网 南奥学习网 南奥学习网 南奥学习网 南奥学习网 南奥教育 南奥教育 南奥留学记 南奥留学记 南奥教育 南奥教育 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌市南奥教育咨询有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 南昌壹佳企网络通信有限公司 广照天下广告 广照天下广告 广照天下广告策划 广照天下广告策划 广照天下 广照天下 广照天下 广照天下 广照天下 广照天下 广照天下广告策划 广照天下广告策划 广照天下广告策划 广照天下广告策划 南昌市广照天下广告策划有限公司 南昌市广照天下广告策划有限公司 南昌市广照天下广告策划有限公司 南昌市广照天下广告策划有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 宿州市腾雀网络科技有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司 九江市云仁商务咨询有限公司
品牌营销
专业SEO优化
添加左侧专家微信
获取产品详细报价方案