总结:新增/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;
}