sql >> Databasteknik >  >> RDS >> Mysql

Skapa boolesk kolumn i MySQL med false som standardvärde?

Du måste ange 0 (betyder falskt) eller 1 (betyder sant) som standard. Här är ett exempel:

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

FYI:boolean är ett alias för tinyint(1) .

Här är beviset:

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:Mitt test gjordes på följande version av MySQL:

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


  1. SQL VÄLJ MIN

  2. PHP tar 90 gånger längre tid att köra frågan än MySQL-klienten

  3. Hur man fixar "datediff-funktionen resulterade i ett spill"-fel i SQL Server

  4. Bästa praxis för att designa användarroller och behörighetssystem?