在MySQL中存储时间戳

时间:2016-04-18 09:08:48

标签: php mysql timestamp

如果我使用PHP time()生成时间戳并使用它插入/更新一行,我应该使用哪种列类型?

我过去曾使用varchar(20)(64位),我刚试过TIMESTAMP并且它看起来有2038年的错误。

可以使用varchar(20)来存储时间戳吗?

2 个答案:

答案 0 :(得分:0)

使用DATETIME数据类型

MySQL以DATETIME格式检索并显示'YYYY-MM-DD HH:MM:SS'个值。支持的范围是'1000-01-01 00:00:00''9999-12-31 23:59:59'

TIMESTAMP数据类型用于包含日期和时间部分的值。 TIMESTAMP的范围为'1970-01-01 00:00:01' UTC到'2038-01-19 03:14:07' UTC。

你也可以通过这个,

PHP & mySQL: Year 2038 Bug: What is it? How to solve it?

答案 1 :(得分:0)

使用DATETIME作为数据类型,并使用create table inventory(`id` int primary key, name varchar(30), price float, category varchar(25)); 将时间作为可选参数插入列中。有关日期函数的详细信息,请参阅http://de.php.net/manual/en/function.date.php