datetime默认值 timestamp默认值

是的,这就是问题所在。
默认日期时间为空,默认时间戳为现在。
如果
.datetime没有默认值。
不能使用 NOW()。

.timestamp 可以自动为当前时间。

存储大小;日期时间为 8 个字节;时间戳有 4 个字节。

时区,时间戳会改变;日期和时间不会改变。

Timestamp 始终记住时间戳;日期时间会记住指定的时间。

设置默认当前时间,直接写入DEFAULT CURRENT_TIMESTAMP。

mysql数据库时间与系统时间不一致,该如何解决?

时区不一致是MySQL中时间混乱的主要原因。
直接看系统时区:date+%z。
再次检查 MySQL 时区:SHOW VARIABLES LIKE 'time_zone';。

你发现矛盾了吗?您必须更改 MySQL 时区。
两种方式:
1 更改命令:SET GLOBAL time_zone = 'SYSTEM'; 2 .更改配置文件:更改/etc/my.cnf中的[mysqld],添加default-time-zone='SYSTEM'。
保存更改并重新启动 MySQL。

如何选择?命令更改很快,配置文件更改是永久性的。
不要忘记重新启动服务。
你自己看看吧。