qt sqlite实现搜索功能遇到的bug

问题遇到的现象和发生背景

我在尝试给qt应用添加搜索功能,在数据库里使用的query能正常返回结果,但是放在代码里却只能返回数据库的固定一条数据,不理解是什么情况,麻烦指点一下。

遇到的现象和发生背景,请写出第一个错误信息
用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
void StudentDlg::on_pushButton_SEARCH_clicked()
{
    int id = ui->lineEdit_ID->text().toInt();
    QString str = ui->lineEdit_NAME->text();
    QSqlQuery query;
    if(id>0){
        QString sql = QString("SELECT * FROM student where id=%1").arg(id);
        if(query.exec(sql)){
            ui->tableView->setRowCount(1);
            if(query.next())
            {
                for(int i=0;i<3;i++)
                {
                    ui->tableView->setItem(1,i, new QTableWidgetItem(query.value(i).toString()));

                }
            }
        }
    }
}

运行结果及详细报错内容

img

我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%

尝试过在navicat里面使用同样的query,但是sql返回了正确结果,不清楚是哪里的问题。

img