Ios 无法使用swift中的FMDB加载数据库
我正在尝试创建具有登录/注册的应用程序。我正在使用sqlite保存用户信息和密码。但它不工作,因为数据库没有加载到代码中Ios 无法使用swift中的FMDB加载数据库,ios,swift,sqlite,fmdb,Ios,Swift,Sqlite,Fmdb,我正在尝试创建具有登录/注册的应用程序。我正在使用sqlite保存用户信息和密码。但它不工作,因为数据库没有加载到代码中 let filemgr = NSFileManager.defaultManager() let dirPaths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true
let filemgr = NSFileManager.defaultManager()
let dirPaths =
NSSearchPathForDirectoriesInDomains(.DocumentDirectory,
.UserDomainMask, true)
var docsDir = dirPaths[0] as! String
print(docsDir)
var databasePath = docsDir + "/contacts.sqlite"
if filemgr.fileExistsAtPath(databasePath as String) {
let contactDB = FMDatabase(path: databasePath as String)
if contactDB == nil {
print("Error: \(contactDB.lastErrorMessage())")
}
//Remaining code
}
我在声明的正下方插入了print(contactDB)
,查看其中包含的内容
2016-02-24 13:27:59.445 Login[12850:1625864] The FMDatabase <FMDatabase: 0x7fd76b804750> is not open.
nil
2016-02-24 13:27:59.445登录[12850:1625864]FMDatabase未打开。
无
这是我在控制台里得到的。“Login”是该代码来自的类名。由于无法加载数据库,因此无法取得进展。非常感谢您的帮助。提前谢谢
编辑:添加contactDB.open()后,问题得到解决。我还是有问题
<FMDatabase: 0x7fbb41f5fa70>
Optional(false)
2016-02-24 14:18:51.272 Login[13064:1649879] Error calling sqlite3_step (21: out of memory) rs
可选(假)
2016-02-24 14:18:51.272登录[13064:1649879]调用sqlite3_步骤(21:内存不足)时出错
当我试图打印错误时,我在控制台中得到了它。它说它没有打开。请尝试
contactDB.open()
或
谢谢,这解决了一个问题。但我现在又犯了一个错误。可选(错误)2016-02-24 14:16:05.571登录[13024:1647209]调用sqlite3_步骤(21:内存不足)时出错
if contactDB.open() {
// Do your DB work here.
contactDB.close()
} else {
println("Error: \(contactDB.lastErrorMessage())")
}