0

我只是想将我的数据库布局从使用时间更改为date("y-m-d h:i:s") 仅使用 SQL 查询就可以做到这一点吗?还是我必须手动一一做?

这是因为我开始在数据库中插入时间戳,现在我需要存储date(),我不想通过使用 PHP 将时间戳转换为日期来简单地绕过,我想运行 SQL 来更新从时间戳到日期的所有行。

就像是:

UPDATE `my_table` SET `time` = 'new_date("y-m-d h:i:S") WHERE `time` = 'time()'
4

1 回答 1

2

您需要添加一个DATETIME类型字段来存储它,然后您可以使用FROM_UNIXTIME()mysql 中的函数对其进行转换。

ALTER TABLE my_table ADD my_date_time DATETIME;
UPDATE my_table SET my_date_time = FROM_UNIXTIME(`time`);

文档FROM_UNIXTIME()http ://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_from-unixtime

然后,您可以删除名为time. 无论如何我都会推荐,因为time它是 mysql 中的列类型。

ALTER TABLE my_table DROP `time`;
于 2013-04-22T15:29:35.873 回答