Del manual de MySQL, dice:
BOOL, BOOLEAN
Estos tipos son sinónimos de TINYINT (1). Un valor de cero se considera falso. Los valores distintos de cero se consideran verdaderos:
Creé una columna BOOLEAN con 0
el valor predeterminado. Luego actualizo el valor a 2
. Lógicamente, yo esperaría MySQL para aceptar cualquiera 0
o 1
ya que es un valor lógico. Sin embargo, MySQL no emitió un error ni me impidió realizar la actualización.
Si BOOLEAN funciona exactamente igual que TINYINT (1), ¿hay alguna diferencia si uso TINYINT (1) o BOOLEAN?
BIT
es realmente un campo de bits que contiene de uno a sesenta y cuatro bits de forma compacta.