我正在更新MySQL中的一行,该行目前有15个varchar(2500)列以及一些其他小型列。我需要允许用户在这些列中输入更多数据,将它们转换为BLOBS会更好吗?是否每行最大推荐BLOBS数量?
关于不超过每行最大字节数的最佳做法是什么,同时仍允许用户灵活处理每列中的输入量?
非常感谢。
答案 0 :(得分:0)
不,一行中没有最大建议的BLOBS数量。您实际上只受行的最大大小限制。访问每个BLOB有一些性能开销(该行包含一个指向BLOB数据的指针,该指针存储在别处,而不是访问实际存储在该行中的列值。)
最佳做法是在行中包含最常访问的列,并将可变长度列的大小限制为实际限制。当列的大小超过其他数据类型允许的最大值时,或者当行的长度超过允许的最大值时,请考虑TEXT和/或BLOB列。或者,考虑使用不常访问的“long-ish”列的单独子表。