如何使用 swift 在 iOS coredata sqlite 中启用 DELETE MODE
Posted
技术标签:
【中文标题】如何使用 swift 在 iOS coredata sqlite 中启用 DELETE MODE【英文标题】:How to enable DELETE MODE in iOS coredata sqlite using swift 【发布时间】:2015-05-08 05:00:56 【问题描述】:我正在学习使用 CoreData 创建 ios 数据库。我创建了示例应用程序以了解 CoreData。我从默认数据库创建目录中提取了 Sqlite 文件以使用 SQLite 浏览器检查数据。但 DBBrowser 什么也没显示。但成功消息显示和从数据库中检索数据。然后我找到了this关于CoreData数据库模式。我found 更改 WAL 模式的解决方案。运行后,再次在数据库目录中创建 WAL 模式数据库。我不明白我的代码出了什么问题。任何人都可以给出解决方案。
Xcode 版本:6.3
iOS SDK:8.3
代码
lazy var persistentStoreCoordinator: NSPersistentStoreCoordinator? =
var options = Dictionary<NSObject, AnyObject>()
options[NSMigratePersistentStoresAutomaticallyOption] = true
options[NSInferMappingModelAutomaticallyOption] = true
options["journal_mode"] = "DELETE"
var coordinator: NSPersistentStoreCoordinator? = NSPersistentStoreCoordinator(managedObjectModel: self.managedObjectModel)
let url = self.applicationDocumentsDirectory.URLByAppendingPathComponent("CoreDartaDemo.sqlite")
var error: NSError? = nil
var failureReason = "There was an error creating or loading the application's saved data."
if coordinator!.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: url, options: options, error: &error) == nil
error report
return coordinator
()
【问题讨论】:
【参考方案1】:不确定我是否完全理解您的问题,您是否尝试过关闭日记功能?
options["journal_mode"] = "OFF"
希望对你有帮助
【讨论】:
以上是关于如何使用 swift 在 iOS coredata sqlite 中启用 DELETE MODE的主要内容,如果未能解决你的问题,请参考以下文章
Swift之深入解析如何结合Core Data和SwiftUI