MYSQL8.0坑之timestamp —无法自动生成时间,插入null报错
这是由于explicit_defaults_for_timestamp默认值值在5.7之中是off,在8.0之中默认值改为了on
-- 查看explicit_defaults_for_timestamp默认值
SHOW GLOBAL VARIABLES LIKE "explicit_defaults_for_timestamp";
-- 修改explicit_defaults_for_timestamp默认值
SET @@global.explicit_defaults_for_timestamp=OFF;
至于为什么mysql会这么改就不在这里详细说了。如果遇到这个错误可以选择改explicit_defaults_for_timestamp的值,也可换用datetime