2016-03-05 67 views
0

這是我第一次使用Sql數據庫,並在一個快速搜索我已經達成了一個視頻解釋如何添加一個名爲「2SwiftData」的外部文件,它有許多功能,如「createTable」等。現在幾個問:
1)我應該關閉並打開DataBase?
2)爲什麼不能找到我在聚光燈搜索中創建的表格?
3)FUNC之一是SD.lastInsertedRowId()它應該會返回行的ID但無論我做什麼,則返回0,該表具有
SQLite3問題獲取行ID

功能信息行:

public static func lastInsertedRowID() -> (rowID: Int, error: Int?) { 

    var result = 0 
    var error: Int? = nil 
    let task:()->Void = { 
     if let err = SQLiteDB.sharedInstance.open() { 
      error = err 
      return 
     } 
     result = SQLiteDB.sharedInstance.lastInsertedRowID() 
     SQLiteDB.sharedInstance.close() 
    } 
    putOnThread(task) 
    return (result, error) 

} 

請求:

let ra = SD.lastInsertedRowID() <br> 
    print(ra) 

回答

1

SD.lastInsertedRowID() 返回最近在當前會話中插入的rowid。 通過做 SQLiteDB.sharedInstance.open() 你已經開始了新的連接會話,其中你沒有INSERT的。 manual表示在這種情況下,lastInsertedRowID應該返回0.並且有你得到的。