Размер строки над головой

У меня есть база данных MS SQL Server 2008 на разделяемом хостинге, и мне нужно максимально сократить используемое пространство для хранения. Моя самая большая таблица имеет следующее определение:

CREATE TABLE [stage](
    [station_id] [smallint] NOT NULL,
    [time_utc] [smalldatetime] NOT NULL,
    [stage_mm] [smallint] NOT NULL,
CONSTRAINT [PK_stage] PRIMARY KEY CLUSTERED ([station_id] ASC,[time_utc] ASC)

Я попытался определить среднее количество байтов на запись в моей таблице. Согласно теории размер должен быть: 4B (заголовок строки) + 2B (smallint) + 4B (smalldatetime) + 2B (smallint), что составляет 12 байтов.

Тем не менее, когда я запустил команду:

dbcc showcontig ('stage') with tableresults

Он показывает: MinimumRecordSize = 15, MaximumRecordSize = 15 Итак, согласно SQL Server, количество байт на запись равно 15, а не 12 Число 15 байт на запись кажется правильным, когда я смотрю на общее дисковое пространство, занятое таблицей, и делю его на количество рядов

Что занимает 3 дополнительных байта ???

Ответы на вопрос(2)

Ваш ответ на вопрос