QSqlTableMode设置单张表的查询过滤条件与表中有一列 id自动增加

来源:互联网 发布:神马软件站 编辑:程序博客网 时间:2024/06/05 11:10


1.在表中有一列 id自动增加


query.exec("create table Mark_temp (id int primary key auto_increment,Mark_ID varchar(20), Hum int,Hum_Value float,Temp int,Temp_Value float )");



2.QSqlTableMode设置单张表的查询过滤条件

  

  model_table = new QSqlTableModel(this);     model_table->setTable("Mark_temp");     model_table->setEditStrategy(QSqlTableModel::OnManualSubmit);     model_table->setFilter(QObject::tr("Mark_ID ='%1'").arg(mark_id));     model_table->select();     model_table->setHeaderData(0, Qt::Horizontal, tr("标定序号"));     model_table->setHeaderData(1, Qt::Horizontal, tr("标定地区"));     model_table->setHeaderData(2, Qt::Horizontal, tr("土湿"));     model_table->setHeaderData(3, Qt::Horizontal, tr("实际土湿"));     model_table->setHeaderData(4, Qt::Horizontal, tr("土温"));     model_table->setHeaderData(5, Qt::Horizontal, tr("实际土温"));     ui->tableView->setModel(model_table);

3.QSqlTableMode中类似DRDER BY 的功能

 model_table->setSort(0,Qt::AscendingOrder); //id属性,即第0列,升序排列 model_table->setSort(0,Qt::DescendingOrder); //id属性,即第0列,降序排列 

4.J将一张表的数据写到另一张相同的表中

4query.exec("insert into Mark select * from Mark_temp");