欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

peewee.InternalError: (1071, 'Specified key was too long; max key length is 1000 bytes')

程序员文章站 2022-05-04 15:02:20
原因 :使用peewee创建表时,有类似于这样的语句: (也就是把char类型的字段设置成了主键。) 解释 :utf8mb4 编码下 1 char = 4 bytes。而varchar默认长度为255(255 4 = 1020),超过报错显示的最大长度 1000 bytes。 解决 :设置CharF ......

原因:使用peewee创建表时,有类似于这样的语句: field_name = charfield(primary_key=true)(也就是把char类型的字段设置成了主键。)

解释:utf8mb4 编码下 1 char = 4 bytes。而varchar默认长度为255(255*4 = 1020),超过报错显示的最大长度 1000 bytes。

解决:设置charfield的最大长度参数:max_length=num(num <= 250)

参考python peewee.charfield() examples