sql >> Base de Datos >  >> RDS >> Mysql

¿Crear una columna booleana en MySQL con falso como valor predeterminado?

Tienes que especificar 0 (que significa falso) o 1 (que significa verdadero) como predeterminado. Aquí hay un ejemplo:

create table mytable (
     mybool boolean not null default 0
);

FYI:boolean es un alias para tinyint(1) .

Aquí está la prueba:

mysql> create table mytable (
    ->          mybool boolean not null default 0
    ->     );
Query OK, 0 rows affected (0.35 sec)

mysql> insert into mytable () values ();
Query OK, 1 row affected (0.00 sec)

mysql> select * from mytable;
+--------+
| mybool |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)

FYI:mi prueba se realizó en la siguiente versión de MySQL:

mysql> select version();
+----------------+
| version()      |
+----------------+
| 5.0.18-max-log |
+----------------+
1 row in set (0.00 sec)