0

我想将一些文件加载​​到 MySQL 中,并且我想为在同一加载操作中加载的所有行分配一个时间戳。为此,我可以简单地分配一个这样的默认值吗?

CREATE TABLE test (
    test TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    something VARCHAR(255) NOT NULL
);

当我尝试时,时间戳似乎确实是相同的,但我当然不能确定这是否得到保证。我浏览了文档,但找不到答案。还有更好的方法吗?

4

2 回答 2

1

CURRENT_TIMESTAMPE是同义词NOW()

NOW() 返回一个常数时间,指示语句开始执行的时间

因为它基于语句执行时间,所以你很高兴。

于 2013-09-21T15:31:06.087 回答
0

上面的 SQL 语句保证了每当你在表中插入一行时,你是瞬时的,因此可以显示为:

SELECT CURRENT_TIMESTAMP;

如果您每秒运行此命令,您会注意到您在每个实例上获得了最新的时间。

PS:您还可以使用常量 UTC_TIMESTAMP 来获取 UTC 时区的当前时间。

于 2013-09-21T15:34:35.543 回答