varchar和Django中的CharField字段长度为什么不能超过255

Posted jackshi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了varchar和Django中的CharField字段长度为什么不能超过255相关的知识,希望对你有一定的参考价值。

参考网址:https://blog.csdn.net/w790634493/article/details/80650611

 

理解:

  首先我们要知道一个概念:InnoDB存储引擎的表索引的前缀长度最长是767字节(bytes)

  你如果需要建索引,就不能超过 767 bytes;utf8编码时 255*3=765bytes ,恰恰是能建索引情况下的最大值。

  总结:varchar(255) 不是最优的字符长度,最优还是应该根据实际需要的来。但是这是一个保证你能少出错的一个很好的默认最大值

以上是关于varchar和Django中的CharField字段长度为什么不能超过255的主要内容,如果未能解决你的问题,请参考以下文章

Django框架6

Django:使用正则表达式检查表单中的 CharField 格式

Django TextField 和 CharField 正在剥离空格和空行

如何将现有 CharField 与数据迁移到 Django 中的 IntegerField

Django中 字段和参数

Django中的联合和相交