插入varchar(50)的最大数据大小是多少;

时间:2011-02-03 10:54:43

标签: mysql

我必须通过数据库应用限制,在相关字段中可以插入不超过200kb的数据,然后应该是varchar大小。

2 个答案:

答案 0 :(得分:1)

如果要存储大于64kb的数据,则需要使用TEXT or BLOB column types,因为mysql通常有64kb limit for VARCHAR types

对于每行只存储少于64kb的列,可以使用VARCHAR,但括号中的数字必须是列可以使用的最大字符数。但是,请注意,如果您使用innodb作为innodb will store the contents of the TEXT/BLOB type away from the other columns,那么在TEXT或BLOB列中大文本仍然可以更好,以避免损害表扫描的性能。

答案 1 :(得分:0)

对于非unicode字符数据,您应该使用varchar(8000)作为最大值。 varchar中的数字表示字节。您可以指定最大值8000,但不超过200kb的限制。存储大小是输入的实际数据长度+ 2个字节。

编辑 - 更正 - 来自以下评论 -

MySQL 5.0.3及更高版本中VARCHAR的有效最大长度取决于最大行大小(65,535字节,在所有列之间共享)和使用的字符集。“因此取决于其他内容行,它可能小于那个