我是新来的MySQL我正在使用phpmyadmin 5.1.43。用户进行交易可以说他预订了一个座位,我希望在48小时的预订后,如果他不支付预订,他的预订应该会自动取消。我会怎么做呢?如何自动在指定小时后删除数据库中的数据?
1
A
回答
4
有几种可能的方法。你的选择取决于系统的考虑:
- 计划作业每分钟,每小时,或天,其执行定期清理功能周期性地运行,也许一次。
- 保留记录,但在处理这些记录时,查询包含排除过期记录的限定逻辑。过期的记录保留在那里用于审计和历史目的。
2
在X时间后删除行并不是解决这类问题的关系方式。相反,您希望将足够的数据添加到表中,以便您可以查询它并获得所需的结果。
即,添加一列“expire_at”或类似于日期时间,并且当您查询表格时,添加一个子句WHERE expire_at < NOW()
您甚至可以将此添加到视图中,然后您可以通过更简单的方式查询该视图。
0
每当有人要求预订时,您都可以这样做。
mysql> select timestampadd(HOUR, 48, now());
+-------------------------------+
| timestampadd(HOUR, 48, now()) |
+-------------------------------+
| 2011-05-03 14:53:34 |
+-------------------------------+
1 row in set (0.00 sec)
(我选择:如果座位已经被人保留,保留的时间标记注册在一个特定的列,您可以通过它与当前的日期进行比较得到保留的“年龄”功能now()
来说明这一点,您将替换now()
与特定列的名称。)。然后,如果过期,则让新的保留覆盖前一个保留。
相关问题
- 1. 如何在15天后自动删除数据库中的一行数据?
- 2. PHP - 如何在插入24小时后自动从数据库中删除数据
- 3. 自动从Mysql数据库中删除
- 4. Firebase Cloud功能在特定时间后自动删除数据
- 5. 为什么Firebase数据库中的数据会自动删除?
- 6. 如何在删除迁移后在数据库中修复数据库?
- 7. 如何删除数据库
- 8. 如何确定DB2数据库中的表何时被删除
- 9. 删除指定的从SQLite数据库中的行数
- 10. 如何在sqlite中删除数据库?
- 11. 如何从数据库中删除特定数据(SQL/PHP)
- 12. 如何在特定日期自动删除MySQL数据库中的行?
- 13. 在有效日期后自动删除数据库行
- 14. 在数据库过期后自动删除用户
- 15. 每n秒自动从数据库中删除过时的行
- 16. 如何从数据库(C#)中的数组中删除数据?
- 17. 如何从数据库中检索后删除时间秒?
- 18. 如何从数据库表中自动删除旧记录?
- 19. 自动删除旧数据
- 20. 删除帐户时删除数据库
- 21. 数据会自动从MySQL数据库中,每24小时
- 22. 如何在一个字后删除数据(数据库)中的空格
- 23. 数据库过期后从数据库中删除会话?
- 24. 如何自动删除最早的SQL Server数据库?
- 25. 删除数据库中的特定行
- 26. 删除/删除Teradata中的数据库
- 27. 如何删除数据库中MySQL表中的相关数据?
- 28. Android:从数据库中删除数据
- 29. PHP从数据库中删除数据
- 30. 如何从Firebase中删除数据库?