【发布时间】:2015-09-11 12:17:30
【问题描述】:
当时间戳列定义为DEFAULT 0时,如果在INSERT或UPDATE中未指定,则'0000-00-00 00:00:00'成为默认值。
检查时间戳是否设置为默认值的正确方法是什么?
SELECT * FROM table WHERE timestamp <> 0
它似乎确实有效,但我不确定它是否是正确的方法并且 100% 有效?
在 PHP 中选择这样的值时,如何检查它是否设置?
到目前为止,我想出了这样的东西:
if ($row['timestamp'] != '0000-00-00 00:00:00') {
}
它确实有效,但对我来说似乎很俗气。我不太确定它是否正确。我应该怎么做?
【问题讨论】:
-
这应该在 php 端工作。 if ($row['timestamp'] > 0) { }
-
@Anish,这似乎是 PHP 的方式。在 MySQL 中呢?我猜也一样?
-
@kavoir.com 。是的,同样适用于 mysql
-
SELECT * FROM table WHERE timestamp > 0 。这个