删除功能,为了介绍方便,我将采用选中当前行进行删除操作
当然,考虑到误操作的可能性,我们在删除前会进行提示,提示我们选择使用QMessageBox
代码如下:
void MainWindow::on_pushButton_2_clicked()
{
int row = ui->tableView->currentIndex().row();//记录当前选择行
if(QMessageBox::Yes == QMessageBox::question(this,"Make Sure","确定删除第"+QString::number(row+1)+"行吗?",QMessageBox::Yes | QMessageBox::No , QMessageBox::Yes))
{//提示框,防止误操作,是/否,按下是的操作后
QSqlTableModel * model = new QSqlTableModel(this,db);//新建model
model->setTable("EXAMPLE");//设置表
if(model->select())//判断是否为空表
model->removeRow(row);//删除当前行
model->submitAll();//提交修改的数据
ui->tableView->setModel(model);//设置模型
model->select();//显示修改后的数据
}
}
视觉上
~~~
继续下一节:修改功能