1

在我正在构建的 MySQL 数据库中,我有一列有一个简单的 0 或 1(真或假)数据字段。所有数据最初设置为 0。如果用户在我正在构建的网站上按下按钮,它将(在数据库中)从 0 更改为 1,以显示用户已登录。我希望他们自动注销一天的结束(同样,这是通过将它们设置为 0 来完成的)。

这是一个问题:有没有办法在一段时间后“过期”数据并将其设置回默认值(或 0)?如果是这样,是否可以基于特定的时间段?

如果有任何 SQL 命令或方法可以做到这一点,那么 PHP 呢?

4

2 回答 2

3

如果不触发程序,您可能会在这里不走运。但是,您为什么不执行以下操作:代替布尔值,使用日期并在登录时设置日期。然后,不是询问登录是否为真,而是询问登录日期是否为当前日期。无需过期清理,问题已解决。

于 2013-01-11T05:17:15.913 回答
1

您可以使用事件(http://dev.mysql.com/doc/refman/5.1/en/events.html)或 crontab(仅限 linux/unix)

于 2013-01-11T05:27:01.640 回答