如何在swift中将SQLite数据库转换为Realm数据库

时间:2016-08-11 12:49:53

标签: swift sqlite realm

我有sqlite文件,但我正在尝试在我的应用程序中实现Realm。有没有办法将SQLite数据库转换为Realm?或者我如何将我的sqlite文件用于Realm.Is是否有任何有用的教程或建议?请帮助我。

1 个答案:

答案 0 :(得分:2)

从SQLite切换到Realm应该非常简单。 Realm支持所有与SQLite相同的主要数据类型,因此对于大多数平面表,它应该只是在Realm中创建匹配的模型对象模式并简单地复制值。 Realm支持它支持的每种数据类型的NULL值,因此你应该能够创建类似的NULL检查查询到你现在拥有的(虽然不知道你正在做什么样的NULL检查,我不能肯定它是否会实际上简化了您的查询。)

从SQLite迁移到Realm的主要警告是如何表示关系。 Realm实际上没有传统的主键和外键实现,因此您可能需要更改对象相互引用的方式。 Realm中的数据作为对象公开,因此关系作为模式本身中的对象属性进行管理。对于一对一关系,您可以简单地将对象类型包含为属性,对于一对多关系,您可以包含一组链接对象。对于多对多关系,Realm还提供了一个“反向链接”API,允许对象解决其所属的其他对象。

除此之外,没有一种推荐的方法可以从SQLite迁移到Realm,因为它很可能取决于数据的结构方式。目前还没有任何官方迁移指南或工具(出于上述原因),但这是我们正在研究的内容。

总之,如何将SQLite导入Realm是:

  1. 创建从SQLite表映射的Realm模型类。
  2. 从SQLite读取数据,然后将数据复制到Realm。
  3. 我希望能回答你的问题。