Frage Was ist der Unterschied zwischen den Datentypen MySQL BOOL und BOOLEAN?


Ich benutze MySQL Version 5.1.49-1ubuntu8.1. Es erlaubt mir Spalten mit zwei verschiedenen Datentypen zu definieren: BOOL und BOOLEAN. Was sind die Unterschiede zwischen den beiden Typen?


76
2018-01-20 23:44


Ursprung


Antworten:


Sie sind beide Synonyme für Tinyint (1).


124
2018-01-20 23:48



Wie in anderen Kommentaren festgestellt, sind sie Synonyme für TINYINT (1).

*Warum unterscheiden sie sich zwischen Bool, Boolean und Tiny?* int (1)?

Hauptsächlich Semantik.

Bool und Boolean: MySQL default konvertiert diese in den Tinyint-Typ. Laut einer MySQL-Anweisung, die um diese Zeit geschrieben wurde, "beabsichtigen wir, die vollständige boolesche Typ-Behandlung gemäß Standard-SQL in einer zukünftigen MySQL-Version zu implementieren."

0 = FALSCH 1 = WAHR

TINYINT: belegt ein Byte; reicht von -128 bis +127; oder, 0 - 256.


Häufig in diesem Vergleich erwähnt: Nach MySQL 5.0.3 - Bit: Verwendet 8 Bytes und speichert nur Binärdaten.


20
2017-07-27 19:22



Eine Sache, die ich gerade bemerkt habe - Spring Roo erzeugt mit einer Spalte, die in MySql als BOOL definiert ist, korrekt Java-Code, um den Wert auf einen Boolean zu munizieren, also kann BOOL einen gewissen Wert hinzufügen, auch wenn es nur ein Hinweis auf das ist beabsichtigte Verwendung der Säule.


3
2017-07-01 12:29



Überprüfen Sie die MySQL-Dokument-Übersicht der numerischen Typen:

http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.html


2
2018-01-20 23:52