huhahapz 发表于 2018-10-4 09:02:58

mysql 行长度

  mysql增加字段时出现如下报错

  ERROR 1118 (42000): Row>  原因:
  1、限制规则
  字段的限制在字段定义的时候有以下规则:
  a)存储限制
  varchar 字段是将实际内容单独存储在聚簇索引之外,内容开头用1到2个字节表示实际长度(长度超过255时需要2个字节),因此最大长度不能超过65535。
  b)编码长度限制
  字符类型若为gbk,每个字符最多占2个字节,最大长度不能超过32766;
  字符类型若为utf8,每个字符最多占3个字节,最大长度不能超过21845。
  若定义的时候超过上述限制,则varchar字段会被强行转为text类型,并产生warning。
  c)行长度限制
  导致实际应用中varchar长度限制的是一个行定义的长度。 MySQL要求一个行的定义长度不能超过65535。
  文章转载至http://dinglin.iteye.com/blog/914276

页: [1]
查看完整版本: mysql 行长度