Я также столкнулся с той же проблемой с SQLite и Qt.
В качестве решения я использовал
if (query.next())
{
}
, чтобы определить, возвращает запрос значения или нет.
Но будьте осторожны, он направляет вас к первой записи.И если вам нужно точное количество записей, это не решение проблемы.