MySQL常量字符串的最小字符存储

MySQL常量字符串的最小字符存储,mysql,Mysql,我有一个非常简单的表,它只有两个值:id和type。类型中最长的字符串是11个字符(“董事会”) 我应该在CREATE命令中使用CHAR(11)还是CHAR(12)?MySQL是否实际为CHAR(11)存储了12个字节,其中第12个字节是空字符,或者这与存储无关 编辑:正如Joni所指出的,它不使用11或12个字节,而是使用33或36个字节,因为我存储为utf-8。然而,我的问题是,我是否应该在CHAR(x)中使用11或12,CHAR(M)所需的存储是 M×w字节,0。@Tiny,那个链接是关于

我有一个非常简单的表,它只有两个值:
id
type
类型中最长的字符串是11个字符(“董事会”)

我应该在
CREATE
命令中使用
CHAR(11)
还是
CHAR(12)
?MySQL是否实际为
CHAR(11)
存储了12个字节,其中第12个字节是空字符,或者这与存储无关


编辑:正如Joni所指出的,它不使用11或12个字节,而是使用33或36个字节,因为我存储为utf-8。然而,我的问题是,我是否应该在
CHAR(x)

中使用11或12,CHAR(M)所需的存储是


M×w字节,0。@Tiny,那个链接是关于
INT
…有多少种类型?如果已知类型的数量有限,您可能会在enum中获得更好的存储。整个表中只有7个条目。存储的好处其实并不重要,我问这个问题是因为我想知道我是否需要考虑MySQL中的空终止。在我的例子中,我有utf-8,M=11,w=3,所以它使用33个字节。我要问的是,如果最大的字符串是11个字符,那么M是真的应该是11还是12。使用CHAR(11)来存储11个字符。同样,如果这些是不变的常量字符串,您可以使用枚举。