mysql中文本类型的长度限制_关于数据库:MySQL类型文本的最大长度

我正在创建一个用于发送私有消息的表单,并希望将文本区域的maxlength值设置为mysql数据库表中text字段的最大长度。一个类型文本字段可以存储多少个字符?

如果很多,我是否可以像使用varchar那样在数据库文本类型字段中指定长度?

在一个简单的文本字段中键入64K?痛苦…

@MarcB从不低估用户将大量垃圾粘贴到私有文本消息字段的能力。

这就是为什么你应该限制textfield的容量,并且总是验证你的输入…

湖的最大号码:dev.mysql.com http:/ / / / / refman DOC / storage-requirements.html 5.0

TINYBLOB, TINYTEXT       L + 1 bytes, where L < 2^8    (255 Bytes)

BLOB, TEXT               L + 2 bytes, where L < 2^16   (64 Kilobytes)

MEDIUMBLOB, MEDIUMTEXT   L + 3 bytes, where L < 2^24   (16 Megabytes)

LONGBLOB, LONGTEXT       L + 4 bytes, where L < 2^32   (4 Gigabytes)

L是在你的文本的字节数场。因此,最大数量的字符的文本是(216)使用单字节字符)。均值65 535 chars(使用单字节字符)。

UTF-8的编码的字节的字节(每个字符编码:使用消费可能超过1个字节的空间。为UTF-8的消费之间的空间是1到4字节的字符。

@fyr-这里,l+2字节意味着什么,其中l<2^16?你能再详细解释一下吗?另外,您可以告诉我在文本字段中可以存储多少个字符?拜托。。。。

@j.j.l是字符数,字符数必须小于2的16次方。2^16=65536。因此,您可以输入65535个字符,每个完全填充的字段使用65535个字节+3个字节=65 538个字节。

@谢谢你:)

编辑使数字更清晰。另外,请注意,afaik innodb将这些blob和文本的前768字节存储在行本身中,因此请注意行可以内联存储的限制。

请注意,大小限制以字节为单位。因此,

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值