问题描述:mysql导入数据时出现error 1067错误。

1 首先找到要出错行:CREATE TABLE `fct_sales` (

`updateTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间') ENGINE=InnoDB DEFAULT CHARSET=utf8;

2 搜索datetime 与current_timestamp 的用法

3 修改datetime--timestamp 或者删除 default current_timestamp 

4 successful

原因:datetime 日期函数,只保存日期。适合用来记录数据的原始的创建时间,因为无论你怎么更改记录中其他字段的值,datetime字段的值都不会改变,除非你手动更改它。

timestamp 时间戳,记录最后修改的时间。 可以设置timestamp不自动更新,通过设置DEFAULT CURRENT_TIMESTAMP 可以实现。

timestamp类型适合用来记录数据的最后修改时间,因为只要你更改了记录中其他字段的值,timestamp字段的值都会被自动更新。(如果需要可以设置timestamp不自动更新)