将旧数据模型转换为全新的数据模型(从头开始并删除其他所有内容)

Posted

技术标签:

【中文标题】将旧数据模型转换为全新的数据模型(从头开始并删除其他所有内容)【英文标题】:Transitioning old Datamodel to completely new one (start from scratch and delete everything else) 【发布时间】:2014-11-28 17:56:13 【问题描述】:

我在项目中有一个 xcdatamodel,有 12 个版本,我想重构模型。就像从头开始创建一个新的一样。

新模型将非常不同,我不想保留旧的实体、托管对象等......只需清空所有内容,例如从新项目开始,一个干净的数据模型

另外我商店里已经有应用,所以下次更新时我需要小心。

问题:

由于我不想保留旧数据模型中的任何数据,我可以简单地删除吗?

下一次更新后应用程序将如何承受(使用此新模型)?我可以从应用程序中删除旧数据模型并指向新数据模型吗?

或者更好地创建当前数据模型的新版本并重构所有实体和属性?

以你的经验如何最好?

非常感谢,我已经搜索过了,但我无法为这个特定案例找到正确的答案。

【问题讨论】:

您确定可以删除现有数据吗?用户不会介意吗?如果您确定不需要旧数据,您可以简单地创建一个新的数据模型、实体等并忽略旧数据。确保在具有旧数据的设备上测试升级路径,以确保没有崩溃或其他不良行为。 是的,可以删除现有数据。感谢升级提示。数据是易变的,所以我可以简单地删除旧模型(如 Mundi 所说 - 并检查 NSFileManager)并添加新模型。谢谢两位! 【参考方案1】:

答案:

是的,您可以简单地删除数据存储。 (使用 NSFileManager 检查它是否存在。) 是的,您可以简单地使用其他数据模型。 不,重构旧数据模型听起来很痛苦,没有任何切实的好处。

正如 Mike 在评论中提到的,唯一的问题是这是否真的是您的用户所期望的行为。

【讨论】:

以上是关于将旧数据模型转换为全新的数据模型(从头开始并删除其他所有内容)的主要内容,如果未能解决你的问题,请参考以下文章

将 scikit-learn SVM 模型转换为 LibSVM

机器学习笔记 - 使用TensorFlow Lite从头创建模型

JS从头开始

将核心数据迁移到一个干净的开始

LocalDB:你如何删除它?

从头开始训练 Resnet 深度神经网络