No manual do MySQL, ele diz:
BOOL, BOOLEAN
Esses tipos são sinônimos para TINYINT (1). Um valor zero é considerado falso. Valores diferentes de zero são considerados verdadeiros:
Criei uma coluna BOOLEAN com 0
o valor padrão. Então eu atualizo o valor para 2
. Logicamente, eu esperaria que o MySQL aceitasse 0
ou 1
porque é um booleano. No entanto, o MySQL não emitiu um erro ou me impediu de executar a atualização.
Se o BOOLEAN funciona exatamente da mesma forma que o TINYINT (1), faz alguma diferença usar o TINYINT (1) ou o BOOLEAN?
BIT
é realmente um campo de bits que comporta um a sessenta e quatro bits de forma compacta.