mysql基础(9)_Mysql记录长度

MySQL中记录长度不能超过65535字节。VARCHAR在UTF8下理论上能存储21844个字符,由于额外的长度保存字节,实际存储为21843个。而在GBK字符集中,VARCHAR理论上可存储32766个字符,实际存储32765个。
摘要由CSDN通过智能技术生成

在mysql中,有一项规定:mysql的记录长度(record == 行 row)总长度不能超过65535个字节

Varchar能够存储的理论值为65535个字符,而字符在不同的字符集下可能占用多个字节。因此,mysql中varchar实际存储长度大大缩小。

1、创建表:证明varchar在mysql中能够达到的理论值(utf8和GBK)
Varchar特点:除了存储的数据本身要占用空间,还需要额外的空间来保存记录长度。

mysql> create table mychar(
    -> name varchar(65535)
    -> )charset=utf8;
Query OK, 0 rows affected, 1 warning (0.22 sec)

mysql> desc mychar;
+-------+------------+------+-----+---------+-------+
| Field | Type       | Null | Key | Default | Extra |
+-------+------------+------+-----+---------+-------+
| name  | mediumtext | YES  |     | NULL    |       |
+-------+------------+------+-----+---------+-------+
1 row in set (0.03 sec)

mysql> alter table mychar modify name varchar(21844);
Query OK, 0 rows affected (0.12 sec)
Records: 0  D
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值