QT笔记:数据库总结(四)之SQL模型类-QSqlRelationalTableModel模型
2011-11-23 11:09
666 查看
该类为单张的数据库表提供了一个可编辑的数据模型,它支持外键,除此之外和QSqlTableModel没有什么不同
如果我们希望用户更改课程属性时,只能在课程表中已有的课程中进行选择,而不能随意填写课程,那么Qt中的QSqlRelationalDelegate委托类就能实现这个功能
model = new QSqlRelationalTableModel(this); model->setEditStrategy(QSqlTableModel::OnFieldChange); //属性变化时写入数据库 model->setTable("student"); model->setRelation(2,QSqlRelation("course","id","name"));//将student表的第三个属性设为course表的id属性的外键,并将其显示为course表的name属性的值 model->setHeaderData(0, Qt::Horizontal, QObject::tr("ID")); model->setHeaderData(1, Qt::Horizontal, QObject::tr("Name")); model->setHeaderData(2, Qt::Horizontal, QObject::tr("Course")); model->select(); tableView->setModel(model);
如果我们希望用户更改课程属性时,只能在课程表中已有的课程中进行选择,而不能随意填写课程,那么Qt中的QSqlRelationalDelegate委托类就能实现这个功能
tableView->setItemDelegate(new QSqlRelationalDelegate(tableView));
相关文章推荐
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型
- QT笔记:数据库总结(四)之SQL模型类-QSqlRelationalTableModel模型
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型 .
- QT笔记:数据库总结(四)之SQL模型类-QSqlRelationalTableModel模型
- QT笔记:数据库总结(二)之SQL模型类-QSqlQueryModel模型
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型
- QT笔记:数据库总结(三)之SQL模型类-QSqlTableModel模型
- QT笔记:数据库总结(二)之SQL模型类-QSqlQueryModel模型
- QT笔记:数据库总结(二)之SQL模型类-QSqlQueryModel模型
- QT笔记:数据库总结(二)之SQL模型类-QSqlQueryModel模型
- SQL模型类-QSqlTableModel模型
- SQL模型类-QSqlTableModel模型
- [Qt教程] 第26篇 数据库(六)SQL关系表格模型QSqlRelationalTableModel
- QtCreator 使用SQL模型类(QSqlQueryModel,QSqlTableModel,QSqlRelationalTableModel)
- QT学习——数据库SQL模型类(QSqlTableModel模型)
- SQL模型类-QSqlTableModel模型