MySQL 插入记录省略字段与填写字段为 null 的区别
insert into student(name, hobby) values('Alice', 95);
和
insert into student(name, score, hobby) values('Alice', 95, null);
不一样。
第一句插入后 hobby 填入的是默认值,不一定是 null。如果没有设置默认值则报错。
第二句插入后 hobby填入的是 null,如果不允许为 null 则报错。
注:使用 show create table student 或者 desc student 就可以查看 hobby 是否设置默认值、是否允许为 null