Если я не полностью ошибаюсь, у нас нет булевого типа данных (1 бит) в Firebird, даже SQL Server. Зачем? Я думаю, что логическое значение полезно в различных ситуациях ... И очень низкое потребление пространства ...
Firebird 3 представляет логический тип данных. См. Примечания к выпуску Firebird 3, тип данных BOOLEAN . Вы можете получить 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));
, а затем
изменить таблицу sometable добавить somefield d_boolean
отлично работает на нашей БД:)
Firebird имеет логические значения в виде типа данных bit.
bit
http://www.firebirdsql.org/manual/migration-mssql-data-types.html
FTA:
Преобразование типа данных бит
Тип данных бит используется для хранения одного логического значения 0 или 1. MS SQL не поддерживает присвоение NULL этим полям. InterBase может эмулировать это с типом данных INTEGER или CHAR (1).
Допустимые значения могут быть ограничены с помощью доменов. Для получения дополнительной информации о доменах Firebird см. Документацию «Определение данных».