gpt4 book ai didi

mysql - 当新记录出现时,从 mysql 表中移动旧记录

转载 作者:行者123 更新时间:2023-11-29 21:24:38 24 4
gpt4 key购买 nike

注意,我只能使用 SQL 构建它。

我有一个名为 Stream 的表。当我从外部源获取新数据(批量插入)时,它们会临时存储在流中(引擎=内存)。 Stream表中的每一行都有一个时间戳。当新插入发生时,我需要将超过 30 分钟的所有数据移至历史记录表(engine=myISAM)。解决这个问题的最佳方法是什么?我有点想使用触发器,但不知道这是否是最佳解决方案。我考虑过有一个触发器可以在插入时从表中删除旧数据。但是,由于新数据是一批具有相同时间戳的数据,因此我不想为每个单独的插入循环遍历整个表。我宁愿让它在批量插入完成后进行删除。如果我使用像 python 这样的编程语言来插入、更新,我可以用它来跟踪应用程序状态。但由于除了 SQL 之外我无法使用其他任何东西,所以我有点碰壁了。

最佳答案

我宁愿使用mysql内置的task scheduler并每 30 分钟安排一次事件,将超过 30 分钟的记录移至不同的表。在批量插入期间,您可以暂停事件以防止归档操作与批量插入同时进行。

关于mysql - 当新记录出现时,从 mysql 表中移动旧记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35566639/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com