## 前提条件
現在、最新バージョンのMySQLを使用しています。その時に使用していたテーブルが以下の通りです。
MySQL
1user 2|Field|Type |Null|Key|Default|Extra | 3|id |int(9) |NO |PRI|NULL |auto_increment| 4|name |varchar(64) |NO | |NULL | | 5|mail |varchar(64) |YES | |NULL | | 6|hash |varchar(255)|NO | |NULL | |
上記のように作成した際に下記の認識で作成しました。
0. Default指定がある場合
任意の内容
0. Default指定がない場合、かつNULLを許可している場合
NULL
0. Default指定がない、かつNULLを許可していない場合
NULL(指定する値が無いため)
質問したい点
- 上記の認識は正しいのでしょうか? また、このテーブルは間違いでしょうか?
- Not NULL制約を付与したカラムに対してDefault値がNULLになっているのは直感的にまずい気がするのですが、明示的にDefault値を指定しない場合はどのようにするのか?
- なぜMySQLではNot NULL制約を付与しているのにDefault値を指定しないと、自動的にNULLが入るのか?

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/04 14:51 編集