В чем разница между типами данных MySQL BOOL и BOOLEAN column?
Я использую MySQL версии 5.1.49-1ubuntu8.1. Это позволяет мне определить столбцы двух различных типов данных:BOOL
и BOOLEAN
. Каковы различия между этими двумя типами?
4 ответа:
Как установлено в других комментариях, они являются синонимами для 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