В чем разница между типами данных MySQL BOOL и BOOLEAN column?


Я использую MySQL версии 5.1.49-1ubuntu8.1. Это позволяет мне определить столбцы двух различных типов данных:BOOL и BOOLEAN. Каковы различия между этими двумя типами?

4 77

4 ответа:

Они оба синонимы для TINYINT (1).

Как установлено в других комментариях, они являются синонимами для TINYINT (1).

*Итак, почему они беспокоятся о дифференциации между bool, boolean, tiny * int (1)?

в основном семантика.

Bool и Boolean: MySQL по умолчанию преобразует их в тип tinyint. В заявлении MySQL, сделанном во время этой записи, "мы намерены реализовать полную обработку булевых типов в соответствии со стандартным SQL в будущем выпуске MySQL."

0 = ЛОЖНЫЙ 1 = TRUE

TINYINT: занимает один байт; колеблется от -128 до +127; или, 0 – 256.


часто воспитывается в этом сравнении: После MySQL 5.0.3 -- Bit: использует 8 байт и хранит только двоичные данные.

одна вещь, которую я только что заметил - с столбцом, определенным как BOOL в MySql, Spring Roo правильно генерирует Java-код, чтобы разомкнуть значение на логическое, поэтому, по-видимому, указание BOOL может добавить некоторое значение, даже если это только в характере подсказки о предполагаемом использовании столбца.

проверьте обзор документов MySQL для числовых типов:

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