MySQL TINYINT(1)与BIT(1)的区别

5

请给我启示...

TINYINT(1)和BIT(1)中哪种数据类型占用的空间更小?

据我所知,根据大多数答案,TINYINT(1)和BIT(1)被认为是相同的。

从表面上看,TINYINT(1)可以接受0-9,而BIT(1)只能是1或0。但是由于BIT(1)只需存储一个比特位,因此它使用的存储空间更小。


https://dev59.com/CXVC5IYBdhLWcg3wcwwm - Danny Kopping
1个回答

4

TINYINT的大小始终为1字节。它可以接受-128到127之间的值(如果是有符号的)。

括号中的数字仅用于显示目的。

另一方面,BIT(1)只需要一个比特来存储,但需要对齐整个字节,这意味着如果您只有一个BIT(1)列,则使用一个字节,但如果有多个,则可以将它们放置在同一个字节中。


根据https://dev59.com/HYLba4cB1Zd3GeqPh7Lc,BIT(1)占用1个字节? - gptimajo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接