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:使用正则表达式检查表单中的 CharField 格式
Django TextField 和 CharField 正在剥离空格和空行