MySQL varchar类型最大值是多少

技术MySQL varchar类型最大值是多少本篇内容介绍了“MySQL varchar类型最大值是多少”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希

本文介绍了“MySQL varchar类型的最大值是多少”的知识。很多人在实际案例操作中都会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

问题:MySQL 数据库的varchar字段类型最大存储长度到底是多少?

问题分析

以所有官方文件为准,官方描述如下:

在MySQL 4.1中,长度总是1字节。在MySQL 5.0中,长度可以是1字节(最多255个)或2字节(256到65535个)。

它可能意味着:

在MySQL 4.1之前,长度总是1字节(varchar(20),这意味着20字节)

在MySQL 5.0之后,长度可以是1字节(最多255字节)或2字节(256到65535)

根据官网显示,最大值为65535字节。在utf8mb4编码下,每个字符占用4个字节,最大值应为16,383.75。

6535/4=16383.75

实践验证

似乎在这里得出了一个结论,但事实真的是这样吗?

让我们做个实验,好吗?

Mysql版本:select version();//5.7

1、若一个表只有一个varchar类型

定义如下:

createtable ` t1 `(` c ` varchar(N)DEFAULTNULL)ENgine=innoddefaultcharset=utf8 MB 4;表t1中“c”字段的最大长度n是多少?

(6553512)/4=16383备注:

减去1的原因是实际行存储从第二个字节开始;

减去2的原因是varchar头的2个字节代表长度;

除以4的原因是字符编码是utf8mb4。

00-1010定义如下:

create table ` T2 `(` C1 ` int(10)DEFAULT NULL,` c2`char(32)DEFAULTNULL,` C3 ` varchar(N)DEFAULT NULL)ENGINE=innodDEFAULT charset=utf8 MB 4;表t2中“c”字段的最大长度n是多少?

(6553512432 * 4)/4=16350备注:

减去1和2的原因同上;

减去4的原因是int类型占用了4个字节;

减去32*4的原因是utf8mb4编码的字符类型占用4个字节(长度32)

我们来验证一下是否如上面推理计算中所说:

00-1010 alter table`t2 `修改列` c3` varchar (16350)已成功执行。

2)将t2表中c3字段的长度修改为16351

alter table ` T2 ` modify column ` C3 ` varchar(16351);执行失败,出现以下错误消息:

行太大。不计算BLOBs,所用表类型的最大行大小为65535。这包括存储开销,请查看手册。您必须将一些列更改为文本或博客。

“MySQL varchar类型的最大值是多少”到此结束。感谢阅读。如果你想了解更多的行业,可以关注网站。边肖将为您输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/133546.html

(0)

相关推荐

  • 怎样用Excel制作一枚电子印章

    技术怎样用Excel制作一枚电子印章怎样用Excel制作一枚电子印章,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。声明:本文仅用作学习交流,

    攻略 2021年10月21日
  • python中如何使用Matplotlib库

    技术python中如何使用Matplotlib库这篇文章将为大家详细讲解有关python中如何使用Matplotlib库,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Matplotli

    攻略 2021年12月8日
  • HTTPS协议的原理及其与HTTP协议的区别是什么

    技术HTTPS协议的原理及其与HTTP协议的区别是什么这篇文章给大家介绍HTTPS协议的原理及其与HTTP协议的区别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。HTTPS协议是什么https

    攻略 2021年11月12日
  • C++ I/O 类

    技术C++ I/O 类 C++ I/O 类I/O 类
    ?
    C++ 不直接处理输入输出, 而是通过一组定义在标准库中的类型来处理 I/O . 这些类型支持从设备读取数据, 向设备写入数据的 I/O 操作,

    礼包 2021年11月5日
  • 值得收藏的CSS可视化工具有哪些

    技术值得收藏的CSS可视化工具有哪些这篇文章主要讲解了“值得收藏的CSS可视化工具有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“值得收藏的CSS可视化工具有哪些”吧

    攻略 2021年11月8日
  • k8s上的火花与k8s操作器上的火花的对比是怎样的

    技术spark on k8s与spark on k8s operator的对比是怎样的这期内容当中小编将会给大家带来有关spark on k8s与spark on k8s operator的对比是怎样的,文章内容丰富且以

    攻略 2021年12月15日