boolean
MySQL で、デフォルト値が である列を持つテーブルを作成したいのですfalse
が、デフォルトで NULL が受け入れられます...
ベストアンサー1
デフォルトとして0
(false を意味する) または(true を意味する)を指定する必要があります。次に例を示します。1
create table mytable (
mybool boolean not null default 0
);
FYI:boolean
は の別名ですtinyint(1)
。
証拠はこれです:
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)
参考までに: 私のテストは次のバージョンの MySQL で実行されました:
mysql> select version();
+----------------+
| version() |
+----------------+
| 5.0.18-max-log |
+----------------+
1 row in set (0.00 sec)