返回顶部
首页 > 资讯 > 数据库 >MySQL中怎么求varchar最大长度
  • 591
分享到

MySQL中怎么求varchar最大长度

2024-04-02 19:04:59 591人浏览 薄情痞子
摘要

Mysql中怎么求varchar最大长度,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、限制规则字段的限制在字段定义的时候有以下规则:&

Mysql中怎么求varchar最大长度,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

1、限制规则
字段的限制在字段定义的时候有以下规则:
   www.2cto.com  
a)                  存储限制
varchar 字段是将实际内容单独存储在聚簇索引之外,内容开头用1到2个字节表示实际长度(长度超过255时需要2个字节),因此最大长度不能超过65535。
 
b)                  编码长度限制
字符类型若为gbk,每个字符最多占2个字节,最大长度不能超过32766;
字符类型若为utf8,每个字符最多占3个字节,最大长度不能超过21845。
若定义的时候超过上述限制,则varchar字段会被强行转为text类型,并产生warning。
 
c)                   行长度限制
导致实际应用中varchar长度限制的是一个行定义的长度。 mysql要求一个行的定义长度不能超过65535。若定义的表长度超过这个值,则提示
ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs。
 
2、计算例子
举两个例说明一下实际长度的计算。
 
a)                  若一个表只有一个varchar类型,如定义为
create table t4(c varchar(N)) charset=gbk;
则此处N的最大值为(65535-1-2)/2= 32766。
减1的原因是实际行存储从第二个字节开始’;
减2的原因是varchar头部的2个字节表示长度;
除2的原因是字符编码是gbk。  www.2cto.com  
 
b)                  若一个表定义为
create table t4(c int, c2 char(30), c3 varchar(N)) charset=utf8;
则此处N的最大值为 (65535-1-2-4-30*3)/3=21812
减1和减2与上例相同;
减4的原因是int类型的c占4个字节;
减30*3的原因是char(30)占用90个字节,编码是utf8。
 
       如果被varchar超过上述的b规则,被强转成text类型,则每个字段占用定义长度为11字节,当然这已经不是“varchar”了。

关于Mysql中怎么求varchar最大长度问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网数据库频道了解更多相关知识。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中怎么求varchar最大长度

本文链接: https://lsjlt.com/news/58495.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL中怎么求varchar最大长度
    MySQL中怎么求varchar最大长度,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、限制规则字段的限制在字段定义的时候有以下规则:&...
    99+
    2024-04-02
  • mysql中怎么测试varchar类型最大长度
    本篇文章为大家展示了mysql中怎么测试varchar类型最大长度,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 1.先看字符集为la...
    99+
    2024-04-02
  • mysql数据库中varchar的最大长度
    1、varchar存储规则:mysql4.0版本以下,varchar(20),指的是20字节,如果存放UTF8汉字时,只能存6个(每个汉字3字节) mysql5.0版本以上,varchar...
    99+
    2024-04-02
  • oracle中varchar最大长度是多少
    oracle 中varchar的最大长度取决于oracle版本和数据库字符集:oracle 11g和更早版本为4000字节,oracle 12c及更高版本为32767字节。单字节字符集(...
    99+
    2024-05-08
    oracle
  • mysql中varchar可以不设置长度吗
    否,mysql 中 varchar 数据类型必须指定长度,以定义其最大字符数。如果未指定长度,mysql 将抛出错误。 MySQL 中 VARCHAR 可以不设置长度吗? 答案:否 详...
    99+
    2024-04-29
    mysql
  • Java中Arraylist的最大长度
    目录Arraylist的最大长度Arraylist的MAX_ARRAY_SIZE = Integer.MAX_VALUE - 8;Arraylist的最大长度为2147483647即...
    99+
    2024-04-02
  • mysql 数据长度最大限制问题
    my.ini文件中没有设置通信缓冲区的最大长度,默认为1M,故而出现以上错误,在mysql安装文件夹下找到my.ini文件(linux是my.cnf文件)。打开后, 在[mysql]下面新增: default-character-set...
    99+
    2014-09-20
    mysql 数据长度最大限制问题
  • mysql怎样求数据的长度
    小编给大家分享一下mysql怎样求数据的长度,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!mysql求数据长度的方法:1、使用“...
    99+
    2024-04-02
  • Oracle怎么限制VARCHAR列的字符长度
    在Oracle中,可以通过在创建表时使用VARCHAR2数据类型并指定最大长度来限制VARCHAR列的字符长度。例如,要创建一个名为...
    99+
    2024-04-09
    Oracle
  • Oracle怎么计算VARCHAR列的字符长度
    这篇文章将为大家详细讲解有关Oracle怎么计算VARCHAR列的字符长度,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 Oracle 计算 VARCHAR 列字符长度 VARCHAR 数据类型在 Or...
    99+
    2024-05-12
    VARCHAR 字符长度 Oracle CHAR_LENGTH VSIZE
  • JavaScript中怎么求字符串长度
    这篇文章给大家介绍JavaScript中怎么求字符串长度,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在JavaScript中,可以利用String对象的length属性来求字符串长度...
    99+
    2024-04-02
  • Java中Arraylist的最大长度是多少
    这篇文章主要介绍了Java中Arraylist的最大长度是多少,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Arraylist的最大长度Arraylist的MAX_ARRAY...
    99+
    2023-06-29
  • oracle中nvarchar2的最大长度是多少
    在Oracle数据库中,NVARCHAR2数据类型用于存储Unicode字符集的可变长度字符串。NVARCHAR2数据类型的最大长度...
    99+
    2024-04-09
    oracle
  • c++中字符串的长度怎么求
    c++中获取字符串长度的方法有:字符串对象方法:string::size() 和 string::length(),返回不含终止符 '\0' 的字符个数;指针操作:遍历字符串直到遇到 '...
    99+
    2024-05-12
    c++
  • Oracle中怎么将VARCHAR类型的列修改为指定长度
    这篇文章将为大家详细讲解有关Oracle中怎么将VARCHAR类型的列修改为指定长度,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。修改 VARCHAR 列的长度 Oracle 中 VARCHAR 类型的数...
    99+
    2024-05-13
    VARCHAR ALTER_TABLE TRUNCATE EXTEND In-place_column_addition
  • MySQL怎么确定VARCHAR的大小
    这篇文章主要介绍“MySQL怎么确定VARCHAR的大小”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL怎么确定VARCHAR的大小”文章能帮助大家解决问题。首先不建议使用TEXT类型的,因...
    99+
    2023-06-29
  • MySQL中每种类型标识符的最大长度是多少?
    众所周知,MySQL 中的某些对象被称为标识符。这些对象包括数据库、表、索引、列、别名、视图、存储过程、分区、表空间等。标识符使用 Unicode (UTF-8) 存储。每种类型标识符的最大长度如下表所示:Sr.编号标识符最大长度(字符)1...
    99+
    2023-10-22
  • php怎么求字符串长度
    这篇文章主要介绍“php怎么求字符串长度”,在日常操作中,相信很多人在php怎么求字符串长度问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php怎么求字符串长度”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-07-02
  • C++中怎么用sizeof求字符串长度
    在C++中,可以使用sizeof运算符来求字符串的长度。但需要注意的是,sizeof运算符返回的是字符串在内存中所占的字节数,而不是...
    99+
    2023-10-28
    C++
  • c++中字符数组的长度怎么求
    c++ 中求字符数组长度的标准方法是使用 strlen() 函数。该函数接受指向字符数组的指针,返回数组中以 '\0' 结尾的字符数。要使用它,声明数组、调用 strlen() 并打印结...
    99+
    2024-05-10
    c++ 标准库
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作