Может ли Microsoft хранить трехзначные поля в одном бите?

Я совершенно не знаю SQL / баз данных, но я беседовал с другом, который много работает с базами данных о том, как некоторые базы данных используют «логическое» поле, которое может принимать значение NULL в дополнение к true и false.

В связи с этим он сделал следующее замечание: «К чести Microsoft, они никогда не называли такие поля логическими, они просто называют их немного. И это правда - если у вас есть восемь или меньше битовых полей в записи требуется только один байт, чтобы сохранить их все ".

Естественно, это кажется мне невозможным - если поле может содержать три значения, вы не поместите восемь из них в байт. Мой друг согласился с тем, что это кажется странным, но попросил незнания внутренних компонентов низкого уровня и сказал, что, насколько он знает, такие поля могут содержать три значения при просмотре со стороны SQL, и для этого требуется байт памяти , Я полагаю, у одного из нас есть провод, пересекающийся. Кто-нибудь может объяснить, что на самом деле здесь происходит?

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

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