mysql中表列字段名长度最长可以多少

mysql中表列字段名长度最长可以多少,第1张

mysql中表字段名的最大允许长度64个字节,如果都是英文字母或数字,那么字段名最长可以是64个字符,如果使用中文那么每个中文字将占用两个字节。

例如下面两个字串(刚好64个字节)作为列名不会出错

`a111111111122222222223333333333444444444455555555556666666666123`,

`a11111111112222222222333333333344444444445555555555666666666612中`

而下面两个字串作为列名就会报错,因为长度刚好超出64个字节

`a1111111111222222222233333333334444444444555555555566666666661234`,

`a111111111122222222223333333333444444444455555555556666666666123中`

有关MySQL标识符最大长度请参阅下表

在mysql中,每个数据库最多可创建20亿个表,一个表允许定义1024列,每行的最大长度为8092字节(不包括文本和图像类型的长度)。当表中定义有varchar、nvarchar或varbinary类型列时,如果向表中插入的数据行超过8092字节时将导致Transact-SQL语句失败,并产生错误信息。SQL对每个表中行的数量没有直接限制,但它受数据库存储空间的限制。每个数据库的最大空间1048516TB,所以一个表可用的最大空间为1048516TB减去数据库类系统表和其它数据库对象所占用的空间。

打开MySQL的官方文档,能够清楚的看到MySQL对每个表有一个硬限制,就是最多只能够有4096字段数,但是实际情况要比这个少,因为还要取决于下面几个因素:

1.来自于存储引擎的限制,比如InnoDB存储引擎限制每个表最多有1017个字段。

2.所有字段的总共尺寸加起来不能够大于行尺寸限制,在MySQL里面,这个尺寸值为65535个字节。

3.还有一些其他原因,如.frm文件的限制等等。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6099571.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存