获取行ID的SQLite3问题

时间:2016-03-05 15:54:24

标签: ios iphone swift sqlite

这是我第一次使用Sql数据库并在快速搜索中我已经到达了一个视频,解释了如何添加一个名为“2SwiftData”的外部文件,它有很多功能,例如“createTable”等。现在几个Q:
1)我应该关闭并打开DataBase吗?
2)为什么我找不到我在聚光灯搜索中创建的表格?
3)其中一个func是awk -v awkvar="$shellvar" 'print "foo" awkvar "bar"',它应该返回行的ID,无论我做什么,返回0,并且表中有信息行

功能:

SD.lastInsertedRowId()

请求:

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)

}

1 个答案:

答案 0 :(得分:1)

SD.lastInsertedRowID() 返回当前会话中最后插入的rowid。 通过做 SQLiteDB.sharedInstance.open() 您已经开始了新的连接会话,其中没有INSERT。 manual表示在这种情况下,lastInsertedRowID应该返回0.并且有你得到的。