This commit is contained in:
overtake 2017-03-10 21:44:11 +03:00
commit 2b252f340b

View File

@ -110,6 +110,23 @@ public final class SqliteInterface {
}
}
public func selectWithKey(_ query: String, index: Int, key: Data, _ f: (SqliteStatementCursor) -> Bool) {
var statement: OpaquePointer? = nil
sqlite3_prepare_v2(database.handle, query, -1, &statement, nil)
let preparedStatement = SqliteInterfaceStatement(statement: statement)
key.withUnsafeBytes { (bytes: UnsafePointer<Int8>) -> Void in
preparedStatement.bind(index, data: bytes, length: key.count)
}
let cursor = SqliteStatementCursor(statement: preparedStatement)
while preparedStatement.step() {
if !f(cursor) {
break
}
}
preparedStatement.reset()
preparedStatement.destroy()
}
public func select(_ query: String, _ f: (SqliteStatementCursor) -> Bool) {
var statement: OpaquePointer? = nil
sqlite3_prepare_v2(database.handle, query, -1, &statement, nil)