gpt4 book ai didi

ios - 防止用户看到旧数据 MySQL/iOS

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

我正在使用一个允许用户上传和下载图片的应用程序。与 Snapchat 类似,他们可以查看自己关注的人的照片。 24 小时后,这些图片将被移至存档表,因此用户将无法再看到它们。我正在使用 mysql 分区来完成这方面的工作。

但是,在客户端,我需要使用照片表中最后获取的行的日期不断更新 mysql 查询。我将此日期存储在 iOS 应用程序上。如果用户注销并允许其他人登录,这就会出现问题。我必须清除这些数据,并且现在没有任何用户的引用点。

我有一个解决方案来解决这个问题,我想知道它的可行性如何。我将创建一个触发器,每次用户检索照片时都会运行该触发器。它将更新用户表中保存他们最后查看日期的列。这样,当任何用户重新登录时,我都会看到他们上次查看的日期。这是一个好主意吗?我愿意接受任何关于如何改进这种方法的建议,因为我需要保存图片而不是仅仅删除它们。

*注意分区可以工作,但因为我需要确保照片至少持续 24 小时,所以一些照片最终会持续超过 24 小时,从而提供用户仍然可以看到照片的可能性

照片表

*id:二进制 16

*users_id:外部:二进制 16

*文件名:varchar

*创建时间:日期时间

照片存储在 Amazon s3 上

最佳答案

添加一列

visible int not null

上传时将可见设置为 1。还将 now() 放入created_at日期时间。

创建一个事件,如下所示:

http://www.mysqltutorial.org/mysql-triggers/working-mysql-scheduled-event/

让事件每天或每 6 小时运行一次,无论如何。可以用 cron 任务代替。

当该东西运行时,对于超过 1 天的任何内容,它会将可见设置为 0。

当用户查看其他人的个人资料图片时,他们只会看到可见的=1 张图片。

发布照片的人可以看到他的所有照片。

所以它是自动化的,你可以在开关处睡着。

关于ios - 防止用户看到旧数据 MySQL/iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31411677/

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