慕哥,help~

来源:2-3 实体类设计与表创建B

繁星之夜

2018-05-19

慕哥,为什么我在建立微信账号表的openId唯一索引的时候,显示[Err] 1071 - Specified key was too long; max key length is 767 bytes啊。我字段是varchar(1024),引擎是innodb,mysql5.5,数据库表设置和你一致就是alter加索引的时候报错。怎么解决啊

create table `tb_wechat_auth`(

`wechat_auth_id` int(10) not null auto_increment,

`user_id` int(10) not null,

`open_id` varchar(1024) not null,

`create_time` datetime default null,

primary key (`wechat_auth_id`),

constraint `fk_wechatauth_profile` foreign key(`user_id`) references `tb_person_info`(`user_id`)

)engine =INNODB auto_increment=1 default charset = utf8;

~

alter table tb_wechat_auth add unique index(open_id);

~

[SQL]alter table tb_wechat_auth add unique index(open_id);

[Err] 1071 - Specified key was too long; max key length is 767 bytes


写回答

3回答

翔仔

2018-05-19

慕哥是谁:)已回答了这个问题哈,设置长度为20就行了,改一下,openid不需要这么长

0
0

翔仔

2018-05-19

:)数据库版本不同索引长度要求不同:)

0
1
繁星之夜
嗯的~谢谢翔哥~
2018-05-19
共1条回复

繁星之夜

提问者

2018-05-19

。。。翔哥~。。。有点紧张,喊错了。。

0
0

Java双版本(SSM到SpringBoot)校园商铺全栈开发

SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需

5113 学习 · 8144 问题

查看课程