我有一个目前有一个id的表,然后有60个TINYINT(1)字段作为布尔值。我还需要为每个注释添加一个补充字段。那个字段的总数大约是120,我想知道是否有任何有大表的经验可以提供任何实用的建议,因为我知道我可以"创造这个,但运作效果会是什么,它们会引人注目吗?
一行中几乎没有任何笔记包含数据。可能一次只有4到5个。
任何建议
答案 0 :(得分:1)
确定影响的唯一方法是测试它。但我会把桌子标准化。让我们说具有60个布尔字段的表被称为" product"布尔字段是状态字段。目前有60个status_options,我们需要一个M:N表(多对多)
product
--------
id
name
status_option
--------------
id
name
product_status
---------------
id (not necessary if you combine product_id and status_option_id as primary key)
product_id
status_option_id
value (tinyint(1))
答案 1 :(得分:1)
音符有多大? 25,255,1000个字符?
每个表(无论存储引擎如何)的最大行大小为 65,535字节。存储引擎可能会对此施加其他限制 限制,减少有效的最大行大小。
Limits on Table Column Count and Row Size
使用varchar(255)UTF-8,您可以拥有85列,但每列有1000个字符,限制为21个。