В чем разница между типами данных 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-код, чтобы unmarshall значение к логическому, поэтому, предположительно, указание BOOL может добавить некоторое значение, даже если это только в характере намека о предполагаемом использовании столбца.
проверьте обзор документов MySQL числовых типов:
http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.html