QT学习 4

总结:新增/insert
心得:代码冗余严重,感觉还是基础好差弄得,现在在于实现
对于新增:得到lineEidt Value
然后p那个方法预先插入sql,执行插入
对于批量插入,存进列表,遍历列表执行就好了

//流程:ui -> coder -> database 
//查询里面有把database中的数据丢到ui上
//问题:
		//样式右上角问号问题:
		//暂时解决 
		//放构造函数里面
setWindowFlags(Qt::WindowCloseButtonHint | Qt::MSWindowsFixedSizeDialogHint);

这是跳到的新增界面
在这里插入图片描述

int bookInsertDialog::on_pushButton_clicked()
{
    QSqlQuery query;

    Student stuInsert;
    stuInsert.Sno = ui->lineEdit_Sno->text();
    stuInsert.Sname = ui->lineEdit_Sname->text();
    stuInsert.Ssex = ui->lineEdit_Ssex->text();
    stuInsert.Sage = ui->lineEdit_Sage->text().toInt();
    stuInsert.Sdept = ui->lineEdit_Sdept->text();

    if("" == stuInsert.Sno )
    {
        return 0;
    }

    QString Sno;
    QString Sname;
    QString Ssex;
    int Sage;
    QString Sdept;

    QList<Student> stuList;
    stuList.append(stuInsert);

    for(int i = 0; i < stuList.length(); ++i)
    {
        Sno = stuList[i].Sno;
        Sname = stuList[i].Sname;
        Ssex = stuList[i].Ssex;
        Sage = stuList[i].Sage;
        Sdept = stuList[i].Sdept;

        query.prepare("INSERT INTO student (Sno, Sname, Ssex, Sage, Sdept) VALUES (?, ?, ?, ?, ?)");
        query.addBindValue(Sno);
        query.addBindValue(Sname);
        query.addBindValue(Ssex);
        query.addBindValue(Sage);
        query.addBindValue(Sdept);
        query.exec();
    }


    window()->close();


    return 0;

}
发布了84 篇原创文章 · 获赞 9 · 访问量 9172

猜你喜欢

转载自blog.csdn.net/qq_42344456/article/details/102939266
qt4
今日推荐