编辑:如果您使用的是普通 SQLite 数据库,则需要将数据迁移到对 CoreData 友好的持久存储。为此,您可以使用sqlite
库来读取数据。您可以直接在应用程序中执行此操作,或者为此编写一些实用程序应用程序。获得 SQLite Core Data 持久存储后,请关注我的原始帖子:
使用 Core Data,您可以将多个 SQLite 存储组合到一个上下文中。只需将两个持久存储添加到您的NSPersistentStoreCoordinator
.
[coordinator addPersistentStoreWithType:NSSQLiteStoreType
configuration:nil
URL:mainSQLiteURL // URL for your main DB
options:nil
error:nil];
[coordinator addPersistentStoreWithType:NSSQLiteStoreType
configuration:nil
URL:citiesSQLiteURL // URL for the additional DB
options:nil
error:nil];
在此之后,当您NSFetchRequest
使用实体创建时City
(我不知道您的实体名称),它将从两个 SQLite 文件中返回城市。
如果您只想搜索其中一个商店,您可以设置-setAffectedStores:
获取请求。此外,当您插入新City
对象时,您需要通过调用-assignObject:toPersistentStore:
上下文来指定持久存储。否则它将对保存新城市的位置感到困惑。
或者只是将这两个商店合并到一个文件中。