首页 > 其他 > 详细

数据导入报错:Specified key was too long; max key length

时间:2020-09-18 09:04:54      阅读:89      评论:0      收藏:0      [点我收藏+]
问题报错
执行的SQL语句出错:
CREATE TABLE `business_user` (
  `id` varchar(19) NOT NULL COMMENT ‘主键‘,
  `password` varchar(255) DEFAULT NULL COMMENT ‘密码‘,
  `username` varchar(255) DEFAULT NULL COMMENT ‘用户名‘,
  `identity` int(1) DEFAULT NULL COMMENT ‘商户身份(1:员工,2:老板)‘,
  `business_name` varchar(100) DEFAULT NULL COMMENT ‘商户名称‘,
  `address` varchar(100) DEFAULT NULL COMMENT ‘商户地址‘,
  `coordinate` varchar(100) DEFAULT NULL COMMENT ‘商户地址坐标(经度,纬度)‘,
  `auth_status` int(1) DEFAULT NULL COMMENT ‘认证状态(0:未认证,1:认证通过,2:认证不通过)‘,
  `license_img_url` varchar(255) DEFAULT NULL,
  `salt` varchar(255) DEFAULT NULL COMMENT ‘随机盐‘,
  `phone` varchar(20) DEFAULT NULL COMMENT ‘联系电话‘,
  `avatar` varchar(255) DEFAULT NULL COMMENT ‘头像‘,
  `dept_id` int(11) DEFAULT NULL COMMENT ‘部门ID‘,
  `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT ‘创建时间‘,
  `update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT ‘修改时间‘,
  `lock_flag` char(1) DEFAULT ‘0‘ COMMENT ‘0-正常,9-锁定‘,
  `del_flag` char(1) DEFAULT ‘0‘ COMMENT ‘0-正常,1-删除‘,
  `wx_openid` varchar(32) DEFAULT NULL COMMENT ‘微信openid‘,
  `qq_openid` varchar(32) DEFAULT NULL COMMENT ‘QQ openid‘,
  `tenant_id` int(11) NOT NULL DEFAULT ‘1‘ COMMENT ‘所属租户‘,
  PRIMARY KEY (`id`),
  UNIQUE KEY `user_username_uindex` (`username`),
  UNIQUE KEY `user_business_name_uindex` (`business_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
错误信息:Specified key was too long; max key length is 767 bytes

分析

数据库采用的引擎为InnoDB,此引擎支持索引长度为767字节,而username varchar(255)中255*4显然超过了767。

解决办法

修改数据库参数:innodb_large_prefix=ON,或者varchar长度设置小些,如:varchar(64)

数据导入报错:Specified key was too long; max key length

原文:https://blog.51cto.com/14843781/2534667

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!