下表描述了每种标识符的最大长度。
| 标识符类型 | 最大长度(字符) |
|---|---|
| 数据库 | 64(包括 NDB Cluster 8.0.18 及更高版本) |
| 表 | 64(包括 NDB Cluster 8.0.18 及更高版本) |
| 列 | 64 |
| 索引 | 64 |
| 约束 | 64 |
| 存储程序 | 64 |
| 看法 | 64 |
| 表空间 | 64 |
| 服务器 | 64 |
| 日志文件组 | 64 |
| 别名 | 256(见下表的例外情况) |
| 复合声明标签 | 16 |
| 用户定义变量 | 64 |
| 资源组 | 64 |
CREATE VIEW根据 64 个字符的最大列长度(而不是 256 个字符的最大别名长度)检查语句中 列名的别名。
对于不包含约束名称的约束定义,服务器在内部生成从关联表名称派生的名称。例如,内部生成的外键和 CHECK约束名称由表名加上_ibfk_或_chk_ 和一个数字组成。如果表名接近约束名称的长度限制,则约束名称所需的额外字符可能会导致该名称超过限制,从而导致错误。
标识符使用 Unicode (UTF-8) 存储。这适用于表定义中的标识符以及存储在mysql数据库授权表中的标识符。授权表中标识符字符串列的大小以字符为单位。您可以使用多字节字符而不减少这些列中存储的值所允许的字符数。
在 NDB 8.0.18 之前,NDB Cluster 对数据库和表的名称施加了 63 个字符的最大长度。从 NDB 8.0.18 开始,此限制已被删除。请参阅 第 23.2.7.11 节,“在 NDB Cluster 8.0 中解决的以前的 NDB Cluster 问题”。
MySQL 帐户名中的用户名和主机名等值是字符串而不是标识符。有关存储在授权表中的此类值的最大长度的信息,请参阅 授权表范围列属性。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




