I have been trying to figure out my logic. I perform the following to open my database:
func createDB() -> OpaquePointer?{
var db : OpaquePointer?
guard sqlite3_open(path, &db) == SQLITE_OK else {
print("error opening database")
sqlite3_close(db)
db = nil
return nil
}
return db
}
I then try to perform the following select statement:
let queryString = "select photo_id from unsplash_photos"
var statement: OpaquePointer?
if(sqlite3_prepare_v2(db, queryString, -1, &statement, nil)) != SQLITE_OK {
let errmsg = String(cString: sqlite3_errmsg(db)!)
print("error preparing select: \(errmsg)")
}
var rc = sqlite3_step(statement)
while rc == SQLITE_ROW {
print("row",rc)
rc = sqlite3_step(statement)
}
When this runs the result is printing 100 for every step.
row 100
row 100
row 100
row 100
row 100
row 100
row 100
row 100
row 100
Does this have something to do with how the database is setup? Does this have to do with how the tables are situated?