Почему у нас нет логического типа данных в Firebird?

Если я не ошибаюсь, у нас нет логического типа данных (1 бит) в Firebird, даже SQL Server. Почему? Я думаю, что boolean полезен в различных ситуациях... И очень низкий расход пространства...

3 ответов


Firebird 3 вводит логический тип данных. Вижу Firebird 3 примечания к выпуску, логический тип данных. Вы можете получить Firebird 3 отhttp://www.firebirdsql.org/en/firebird-3-0/

Смотрите также оригинальное объявление:http://asfernandes.blogspot.com/2010/12/introducing-boolean-datatype.html


вы должны создать домен для него

CREATE DOMAIN D_BOOLEAN
 AS smallint
 CHECK (VALUE IS NULL OR VALUE IN (0, 1));

а то

alter таблица sometable добавить somefield d_boolean

отлично работает в нашей БД:)


Firebird имеет логические значения в виде bit тип данных.

http://www.firebirdsql.org/manual/migration-mssql-data-types.html

FTA:

преобразование типа данных bit

тип данных bit используется для хранения одного логического значения, 0 или 1. MS SQL не поддерживает присвоение NULL этим полям. InterBase может эмулировать это с целым числом или типом данных CHAR(1).

приемлемые значения можно ограничить с помощью доменов. Дополнительные сведения о доменах Firebird см. В документации по определению данных.