1.modify the employeeinfo.cpp
#include "employeeinfo.h" #include "ui_employeeinfo.h" #include "login.h" #include <QMessageBox> EmployeeInfo::EmployeeInfo(QWidget *parent) : QDialog(parent), ui(new Ui::EmployeeInfo) { ui->setupUi(this); if(!login::connOpen()) { ui->label_sec_status->setText("Failed to open the database") ; } else { ui->label_sec_status->setText("Connected...") ; } } EmployeeInfo::~EmployeeInfo() { delete ui; } void EmployeeInfo::on_pushButton_clicked() { QString eid, name, surname, age; eid = ui->txt_eid->text(); name =ui->txt_name->text(); surname = ui->txt_surname->text(); age = ui->txt_age->text(); if(!login::connOpen()) { qDebug() << "Failed to open the database"; return ; } QSqlQuery qry; QString stmt = "insert into employeeinfo (eid,name,surname,age) values('"+ eid +"','"+ name +"','"+ surname +"','"+ age +"')"; qry.prepare(stmt); if( qry.exec()) { QMessageBox::information(this, tr("Save"), tr("Saved")); login::connClose(); } else { QMessageBox::critical(this, tr("Error"), qry.lastError().text()); } } void EmployeeInfo::on_pushButton_edit_clicked() { QString eid, name, surname, age; eid = ui->txt_eid->text(); name =ui->txt_name->text(); surname = ui->txt_surname->text(); age = ui->txt_age->text(); if(!login::connOpen()) { qDebug() << "Failed to open the database"; return ; } QSqlQuery qry; QString stmt = "update employeeinfo set eid='"+ eid+"',name='"+ name+ "',surname='"+ surname+"',age='"+ age +"'where eid='" + eid + "'"; qry.prepare(stmt); if( qry.exec()) { QMessageBox::information(this, tr("Edit"), tr("Updated")); login::connClose(); } else { QMessageBox::critical(this, tr("Error"), qry.lastError().text()); } } void EmployeeInfo::on_pushButton_delete_clicked() { QString eid, name, surname, age; eid = ui->txt_eid->text(); // name =ui->txt_name->text(); // surname = ui->txt_surname->text(); // age = ui->txt_age->text(); if(!login::connOpen()) { qDebug() << "Failed to open the database"; return ; } QSqlQuery qry; QString stmt = "delete from employeeinfo where eid = '"+ eid +"'"; qry.prepare(stmt); if( qry.exec()) { QMessageBox::information(this, tr("Delete"), tr("Deleted")); login::connClose(); } else { QMessageBox::critical(this, tr("Error"), qry.lastError().text()); } } void EmployeeInfo::on_pushButton_load_clicked() { QSqlQueryModel * modal = new QSqlQueryModel(); QSqlQueryModel * tableModel = new QSqlQueryModel(); login::connOpen(); QSqlQuery* qry = new QSqlQuery(login::mydb); QString stmt; stmt = "select eid,name,surname,age from employeeinfo"; qry->prepare(stmt); qry->exec(); tableModel->setQuery(*qry); ui->tableView->setModel(tableModel); stmt = "select name from employeeinfo"; qry->prepare(stmt); qry->exec(); modal->setQuery(*qry); ui->listView->setModel(modal); ui->comboBox->setModel(modal); login::connClose(); qDebug() << modal->rowCount(); } void EmployeeInfo::on_comboBox_currentIndexChanged(const QString &arg1) { QString name = ui->comboBox->currentText(); if( !login::connOpen()) { qDebug() << "Failed to open the database"; return; } QSqlQuery qry; QString stsm = "select * from employeeinfo where name = '"+ name +"'"; qry.prepare(stsm); if( qry.exec()) { while(qry.next()) { ui->txt_eid->setText(qry.value(0).toString()); ui->txt_name->setText(qry.value(1).toString()); ui->txt_surname->setText(qry.value(2).toString()); ui->txt_age->setText(qry.value(3).toString()); } login::connClose(); } else { QMessageBox::critical(this, tr("Error"), qry.lastError().text()); } } void EmployeeInfo::on_tableView_activated(const QModelIndex &index) { QString val = ui->tableView->model()->data(index).toString(); if( !login::connOpen()) { qDebug() << "Failed to open the database"; return; } QSqlQuery qry; QString stsm = "select * from employeeinfo where eid = '"+ val +"' or name = '"+ val +"' or surname = '"+ val +"' or age = '"+ val +"' "; qry.prepare(stsm); if( qry.exec()) { while(qry.next()) { ui->txt_eid->setText(qry.value(0).toString()); ui->txt_name->setText(qry.value(1).toString()); ui->txt_surname->setText(qry.value(2).toString()); ui->txt_age->setText(qry.value(3).toString()); } login::connClose(); } else { QMessageBox::critical(this, tr("Error"), qry.lastError().text()); } } void EmployeeInfo::on_listView_activated(const QModelIndex &index) { QString name = ui->listView->model()->data(index).toString(); if( !login::connOpen()) { qDebug() << "Failed to open the database"; return; } QSqlQuery qry; QString stsm = "select * from employeeinfo where name = '"+ name +"' "; qry.prepare(stsm); if( qry.exec()) { while(qry.next()) { ui->txt_eid->setText(qry.value(0).toString()); ui->txt_name->setText(qry.value(1).toString()); ui->txt_surname->setText(qry.value(2).toString()); ui->txt_age->setText(qry.value(3).toString()); } login::connClose(); } else { QMessageBox::critical(this, tr("Error"), qry.lastError().text()); } }