你好,我正在使用FMDB到我的swift項目。我將我的sqite文件複製到文檔目錄併成功。我可以得到複製到文檔目錄文件夾中的sqlite文件。 我將數據插入到數據庫,因爲這:結果集返回零甚至有數據庫中的數據FMDB Swift
if db.open() {
let InsertQry = "insert into profiles (image_url, name,dob,gender) values ('\(imgName)','\(nameTxt.text!)','\(dobTxt.text!)','\(genderTxt.text!)')"
print("query= \(InsertQry)")
let result = db.executeUpdate(InsertQry, withArgumentsInArray: nil)
if !result {
print(db.lastErrorMessage())
}
else
{
print("Success")
}
}
,並將其插入數據成功,我可以看到在使用SQLite經理源碼文件數據(Firefox附加一個插件)。 現在我想用這個代碼從我的表中的所有數據:
if db.open() {
let querySQL = "SELECT * FROM profiles"
let results:FMResultSet? = self.db.executeQuery(querySQL,withArgumentsInArray: nil)
if results?.next() == true {
self.userProfilesArray = NSMutableArray()
while results!.next() {
let profileInfo = NSMutableDictionary()
profileInfo.setObject(results!.stringForColumn("image_url"), forKey: "image_url")
profileInfo.setObject(results!.stringForColumn("name"), forKey: "name")
profileInfo.setObject(results!.stringForColumn("dob"), forKey: "dob")
profileInfo.setObject(results!.stringForColumn("gender"), forKey: "gender")
self.userProfilesArray.addObject(profileInfo)
}
} else {
print("results nil")
}
db.close()
}
問題是我進入if results?.next() == true
聲明,但我不打算while循環,我沒有得到數據,即使有數據在我DATABSE。