char(M)M最多255

varchar(M)M最多65516

mysql> alter table yy modify b varchar(65516);
Query OK, 1 row affected (0.17 sec)
Records: 1 Duplicates: 0 Warnings: 0

mysql> alter table yy modify b varchar(65517);
ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs

在utf8编码下最多65516/3=21838个汉字

2012年6月11日 14:27:31 另外:虽然varchar()存储在硬盘上时是按实际占用的字节数+1来存储的,但内存处理时是按定义的字段大小来占用内存的,因此设计时按找需要设定合适的字段大小

相关文章:

  • 2021-12-25
  • 2021-07-17
  • 2022-12-23
  • 2021-07-23
  • 2021-07-22
  • 2022-01-07
  • 2021-04-01
猜你喜欢
  • 2022-12-23
  • 2021-09-05
  • 2021-09-29
  • 2021-10-01
  • 2022-12-23
  • 2022-12-23
  • 2022-01-14
相关资源
相似解决方案