使用Navicat设计表,添加字段时,对于datatime类型,有一个选项“根据当前时间戳更新”
若不勾选创建的sql语句如下:
`auto_audit_date` datetime DEFAULT NULL,
若勾选,则如下:
`auto_audit_date` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
经过测试对于“DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP”有以下作用:
1、insert记录时,当有该字段,则数据库存储该字段值。
2、insert记录时,当无该字段,则数据库存储当前时间。
3、update记录时,当有该字段,则数据库存储该字段值。
4、update记录时,当无该字段,则数据库存储当前时间。
如上所以,如果勾选该选项,当想更改其它字段,而没有涉及该字段时,该字段数据仍然会自动更新,不符合一般设计思路,所以该选项慎重勾选。
-