MySQL数据库对外键和索引等名称的长度限制导致创建时报错

问题描述

RDS产品的MySQL数据库创建索引报如下错误。
Identifier name 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' is too long

问题原因

因为MySQL数据库对外键和索引等名称的长度有限制,具体如下:
Identifier Type
Maximum Length (characters)
Database
64 (NDB storage engine: 63)
Table
64 (NDB storage engine: 63)
Column
64
Index
64
Constraint
64
Stored Program
64
View
64
Tablespace
64
Server
64
Log File Group
64
Alias
256 (see exception following table)
Compound Statement Label
16

解决方案

减少外键/索引等名称的命名长度。

适用于

  • 云数据库 RDS