ios - 在 iOS 上为 SQLite 建模

标签 ios sqlite

我正在考虑制作一个 iOS 应用程序,但我似乎无法为数据库找到一个好的解决方案。

在不输入太多细节的情况下,认为我需要将用户必须执行任务的所有日期/时间存储在我的数据库中。 我只知道开始日期/时间、用户将执行多少任务以及任务之间的时间间隔。

当然,最简单的方法是为用户执行任务的每个日期/时间输入一条记录。

这样我就可以面对数千条记录的插入,因为用户可以选择重复日常任务长达 5 年。

每次用户打开应用程序时,他都会看到每日任务,所以我必须从数据库中获取它。

我想为每个任务只插入一条记录,指示开始和结束日期/时间,但这是不可能的,因为第一天和最后一天可能不同。

例子:

用户从上午 10 点开始,每天以 6 小时为间隔选择 4 个任务:

第一天:

任务 1:上午 10 点

任务 2:下午 4 点

任务 3:晚上 10 点

从第二天开始:

任务 1:凌晨 4 点

任务 2:上午 10 点

任务 3:下午 4 点

任务 4:晚上 10 点

最后一天:

任务 1:凌晨 4 点

任务 2:上午 10 点

我希望我说得足够清楚,希望有人能提出一些好主意。 谢谢。

最佳答案

基于以下假设:1) 一个项目可能包含 1 个或多个任务。 2) 一个用户可以有1个或多个项目。 3) 一个任务不能分配给多个项目。 4) 一个项目不能分配给超过 1 个用户。

我将其建模如下:

enter image description here

顺便说一句,在 iOS coredata 中,你不处理“记录”,而是处理“对象”。

关于ios - 在 iOS 上为 SQLite 建模,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25793416/

相关文章:

ios - SKPaymentTransaction 下载数组始终为零?

ios - 为什么当我执行 removefromsuperview 时内存仍然存在?

objective-c - CoreData/SQLite 确定字段是否不以特定字符串结尾的最快方法

c# - x86 DLL 有效但 x64 DLL 无效

postgresql - SQLite 到 PostgreSQL 仅数据传输(以维护 alembic 功能)

ios - 在iOS中无限期播放MIDI音符的最简单方法是什么?

ios - 用于创建可调整大小图像的工具

ios - Binary Rejected 用于导入 Health 工具包但未实现/使用该工具包

mysql - 在 sql 查询中返回前 3 个计数值

android - ORMLite 中相同类型的多个 ForeignCollection