// Connect to the database
// ...
let sql = """
SELECT
Language, Percentage
FROM countrylanguage
WHERE CountryCode = 'RUS'
ORDER BY Percentage DESC
"""
var pointer: OpaquePointer?
if sqlite3_prepare_v2(db, sql, -1, &pointer, nil) != SQLITE_OK {
let err = String(cString: sqlite3_errmsg(db)!)
print("SQL query execution error: \(err)")
}
// Get first row
sqlite3_step(pointer)
showRow(pointer)
// Get all rows
while sqlite3_step(pointer) == SQLITE_ROW {
showRow(pointer)
}
sqlite3_finalize(pointer)
func showRow(_ pointer: OpaquePointer?) {
let text = sqlite3_column_text(pointer, 0)
let lang = String(cString: text!)
let percent = sqlite3_column_double(pointer, 1)
print("\(lang): \(percent)")
}