MySQL标识符长度限制

下表描述了每种标识符类型的最大长度。

标识符类型 最大长度(字符数)
数据库 64
64
64
索引 64
约束 64
存储程序 64
视图 64
表空间 64
服务器 64
日志文件组 64
别名 256(参见下表中的例外情况)
复合语句标签 16
用户定义变量 64
资源组 64

CREATE VIEW语句中列名的别名将根据 64 个字符的最大列长度(而不是 256 个字符的最大别名长度)进行检查。

对于不包含约束名称的约束定义,服务器会在内部生成一个从关联表名派生的名称。例如,内部生成的外键和 CHECK 约束名称由表名加 _ibfk__chk_ 和一个数字组成。如果表名接近约束名称的长度限制,则约束名称所需的附加字符可能会导致该名称超过限制,从而导致错误。

标识符使用 Unicode (UTF-8) 存储。这适用于表定义中的标识符以及存储在 mysql 数据库的授权表中的标识符。授权表中标识符字符串列的大小以字符为单位。您可以使用多字节字符,而不会减少允许存储在这些列中的值的字符数。

MySQL 帐户名称中的用户名和主机名等值是字符串而不是标识符。有关授权表中存储的此类值的最大长度的信息,请参阅 授权表范围列属性(如下)。

列名 允许的最大字符数
HostProxied_host 255
UserProxied_user 32
Db 64
Table_name 64
Column_name 64
Routine_name 64
相关推荐
加号32 小时前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏2 小时前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐2 小时前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
百锦再3 小时前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip
WeiXin_DZbishe3 小时前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5
tryCbest3 小时前
数据库SQL学习
数据库·sql
jnrjian3 小时前
ORA-01017 查找机器名 用户名 以及library cache lock 参数含义
数据库·oracle
十月南城3 小时前
数据湖技术对比——Iceberg、Hudi、Delta的表格格式与维护策略
大数据·数据库·数据仓库·hive·hadoop·spark
Henry Zhu1233 小时前
数据库:并发控制基本概念
服务器·数据库
银发控、4 小时前
数据库隔离级别与三个问题(脏读、不可重复读、幻读)
数据库·面试