Предполагается, что вы показываете псевдокод, так как вам не хватает многих аргументов для функций sqlite3 ...
Вам нужно sqlite3_step
после sqlite3_reset
и до получения первой строки значений.
Вы можете изменить do {
... } while(sqlite3_step() == SQLITE_ROW)
на while(sqlite3_step() == SQLITE_ROW)
... }
, чтобы выполнить это.
Это также устранит необходимость перехода сразу послеsqlite3_prepare16_v2