warning:1071 (42000) Specified key was too long;max key length is 1000 bytes
原因是mysql字段长度设置的太长了, 从而导致mysql在建立索引时,索引长度超过了mysql默认许可的长度
默认 Innodb 允许长度为 767
MyISAM 允许长度为 1000
官方说明 如下:
Prefix support and lengths of prefixes (where supported) are storage engine dependent. For example, a prefix can be up to 767 bytes long for InnoDB
tables or 3072 bytes if the innodb_large_prefix
option is enabled. For MyISAM tables, the prefix limit is 1000 bytes.
转一份通俗易懂的 [以下内容转自 http://www.jb51.net/article/24499.htm ]
建立索引时,数据库计算key的长度是累加所有Index用到的字段的char长度后再按下面比例乘起来不能超过限定的key长度1000:
latin1 = 1 byte = 1 character
uft8 = 3 byte = 1 character
gbk = 2 byte = 1 character
举例能看得更明白些,以GBK为例:
CREATE UNIQUE INDEX `unique_record` ON reports (`report_name`, `report_client`, `report_city`);
其中report_name varchar(200), report_client varchar(200), report_city varchar(200)
(200 + 200 +200) * 2 = 1200 > 1000,所有就会报1071错误,只要将report_city改为varchar(100)那么索引就能成功建立。
如果表是UTF8字符集,那索引还是建立不了。
转载于:https://www.cnblogs.com/debmzhang/p/4447313.html
warning:1071 (42000) Specified key was too long;max key length is 1000 bytes相关推荐
- mysql导入报错1071_导入sql文件报错:1071 Specified key was too long; max key length is 767 bytes...
一.背景 今天把服务器的数据库导出了一份sql文件,准备导入到本地,但是在导入的时候,报了个错: Syntax error or access violation: 1071 Specified ke ...
- mysql导入报错1071_mysql报错:Specified key was too long; max key length is 767 bytes | 吴老二...
最近部署的mysql服务,在导入数据后,查询数据时提示:ERROR 1071 (42000) : Specified key was too long; max key length is 767 b ...
- Hive集成Mysql作为元数据时,提示错误:Specified key was too long; max key length is 767 bytes...
在进行Hive集成Mysql作为元数据过程中.做全然部安装配置工作后.进入到hive模式,运行show databases.运行正常,接着运行show tables:时却报错. 关键错误信息例如以下: ...
- Mysql报错:Specified key was too long; max key length is 767 bytes
在执行mysql脚本时,报错:Specified key was too long; max key length is 767 bytes. 解决办法: 一.修改mysql的字符集为uft8 再次执 ...
- MySQL:Specified key was too long; max key length is 1000 bytes
根据sql脚本初始化数据库表结构和数据报的错,主要原因还是数据库版本不一致,当前版本数据库5.5.32,执行sql时,首先是datetime(0)报错了,改成datetime再执行,就报错Specif ...
- Specified key was too long; max key length is 1000 bytes问题解决
今天使用帆软的报表平台管理,进行外接数据库配置,尝试多次一直提示数据导入失败 java的报错 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExcep ...
- hive 1.1.1 Specified key was too long; max key length is 767 bytes
错误 hive> create table shop(locationid int,name string,cnname string) row format delimited fields ...
- MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes
Hive 0.13和HBase 0.98.6.1整合出现错误记录下 hive> CREATE TABLE hbase_table_1(key int, value string) > ST ...
- hive的Specified key was too long; max key length is 767 bytes问题解决
把hive 的metadata配置成mysql,执行命令时报以下错误 hive> show tables; FAILED: Error in metadata: MetaException(me ...
最新文章
- 创建本地数据库时发生错误及其解决方案
- 初识片选信号和中断控制器
- 【Python学习系列二】Python默认编码和Eclipse环境的冲突问题
- treeset java_Java TreeSet Higher()方法与示例
- Bootstrap 字体与图标
- 超细节的QT设计完整界面布局的流程-新手向
- c语言式表白,c语言表白必备
- OPNsense用户手册-别名
- 2018年下半年考试感想
- 常用函数式接口及Stream流
- Hbuilder安装及使用教程
- []int16转[]byte
- java抽取word,pdf的四种武器
- java语言开发手机游戏_手机上的JAVA游戏和JAVA软件,是电脑上的JAVA语言编写的吗?他们之间有什么联系...
- 如何使用Snap功能同时运行两个Windows 8应用程序
- 关于一些常见/好用的matlab工具箱介绍
- 基于数字孪生的机器人焊接自动编程关键技术
- Spring的IOC(依赖注入和控制反转)
- 看到就是缘分!安徽省(16地市)高企认定申报20问/2022年安徽省申报高企条件流程材料要求内容以外的关键问题汇总
- 物联网能否落地?可裁剪嵌入式OS成关键
热门文章
- 三星linux打印机驱动官网下载,三星SL-C515驱动
- 7.23 ToolTip 实现全介绍
- java quickfix_QuickFix Java 讲解(三)客户端的搭建与解析
- layui可以动态添加div吗_乳化剂是什么?可以添加到护肤品里吗?
- python dbf 修改_在Python中将数据写入dbf时出错
- sysbench0.5 mysql_sysbench 0.5安装步骤
- java string contains indexof,java.lang.String.contains()方法实例
- hannoi塔java程序_基于Java实现的Hannoi汉诺塔自动演示程序
- java 断开socket连接_【java serversocket 长连接,客户端断开的问题】-Java技术论坛-ZOL中关村在线...
- mysql创建非聚集索引_一文让你明白聚集索引和非聚集索引?