8
votes

Pourquoi nous n'avons pas de type booléen dans Firebird?

Sauf si je me trompe totalement, nous n'avons aucun type booléen (1 bit) dans Firebird, même SQL Server. Pourquoi? Je pense que Boolean est utile dans diverses situations ... et très basse Consuption ...


0 commentaires

3 Réponses :


-3
votes

Firebird a des booléens, sous la forme du type de données bit .

http://www.firebirdsql.org/manual/migration- MSSQL-Data-Types.html

FTA:

convertir le type de données de bits

Le type de données de bits est utilisé pour contenir une seule valeur booléenne, 0 ou 1. MS SQL ne prend pas en charge l'attribution de NULL dans ces champs. Interbase peut imiter cela avec un entier ou un type de données Char (1).

Les valeurs acceptables peuvent être limitées à l'aide de domaines. Pour plus d'informations sur les domaines de Firebird, voir la documentation de définition de données.


2 commentaires

Je ne suis pas d'accord, Firebird n'a pas de type de données de bits aussi, à mesure que votre message indique au début, mais clarifie alors ... Ce que Firebird a est entier et des caractères d'émulation des champs bit ou booléens.


Je pense aussi que émulation n'est pas égal au type de données booléennes natif.



14
votes

Firebird 3 introduit le type de données booléen. Voir le Firebird 3 Notes de publication, type de données booléen . Vous pouvez obtenir Firebird 3 à partir de http://www.firebirdsql.org/fr/firebird- 3-0 /

Voir aussi l'annonce d'origine: http: //asfernandes.blogspot. COM / 2010/12 / Introduction-Boolean-DataType.html


0 commentaires

5
votes

Vous devez créer un domaine pour celui-ci xxx

et ensuite

alter Table de table Ajoutez unfield d_boolcan

fonctionne parfaitement à notre dB :)


2 commentaires

Cela n'améliore pas les exigences de l'espace. Il utilise toujours 16 bits.


@Raygoudie - Cette réponse a fonctionné en 2013. Je suis sûr que maintenant il y a de meilleures idées;)