20 我在四处浏览SSMS时,发现我的INT列的“大小” 是4字节(预期),但是看到我的BIT列是整个字节时,我感到有些震惊。 我误会了我在看什么吗? sql-server datatypes — 内特 source 1 我很幸运BIT列在字节边界而不是字边界上对齐。 — Mike Sherrill'Cat Recall'12
17 您在表格中定义了多少位列?我在MSDN上发现了这个问题,它说8位或更少的位列存储为一个字节。 http://msdn.microsoft.com/en-us/library/ms177603.aspx — SQLRockstar source 我无法找到的MSDN源已被接受。谢谢。 — Nate 2012年
14 是。 如果bit表中只有一列,则存储使用,byte但是bit同一字节中最多可以存储8 列,因此在此方面,接下来的7列是“空闲的”。 每列存储也需要1位NULL_BITMAP(再次四舍五入到下一个字节)。在数据页中,该字段包含bit所有列的,无论它们是否允许NULL(除非稍后将可空列作为元数据添加ALTER TABLE,否则仅通过尚未更新的行进行更改) — 马丁·史密斯 source