【发布时间】:2012-03-10 09:08:06
【问题描述】:
我有一个包含此列的表格:
last_modified timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
看起来我无法插入带有自定义时间戳的行,我收到此错误:
不正确的日期时间值:第 1 行的列“last_modified”的“1145868501”
我正在尝试使用来自另一个表的数据填充此表,该表只有一个 creation_time 字段,它是一个 DATETIME,因此我使用 UNIX_TIMESTAMP(creation_time) 来填充时间戳。
我认为带有“DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP”的时间戳列阻止我插入自己的东西,对吗?如果是的话,官方文档在哪里,最好的解决方案是什么?先创建一个简单的时间戳,然后在插入数据后更改表?
谢谢!
编辑:由于人们建议我不要使用 UNIX_TIMESTAMP,我不得不说我一开始不想使用它,但我得到了这种错误: 日期时间值不正确:“last_modified”列的“2010-03-28 02:15:51” 所以我想我必须插入一个“真实”的时间戳......
【问题讨论】:
-
试过没有用
creation_time包裹UNIX_TIMESTAMP? -
其实我先试过了,也没用:-(
-
发生了什么?怎么没用?
-
如果你不需要
TIMESTAMP的特殊功能何不改成DATETIME呢? -
我需要它们,问题是我需要先用现有数据填充此表,然后我声明的时间戳正是我想要的未来数据。否则我觉得它不适用于 2010-03-28 02:15:51 但它适用于 2010-10-11 11:11:11 例如...