View Full Version : Sorting and filtering sql data
kode
17th December 2010, 15:50
Hi all,
how can i sort and filter data in table. I will use sql as source of the data, so i can use where clause as filter, but is there something as data holder (similar to dataadapter, datareader or dataset in .net) which i can operate with, without to fetch the data every time from the sql server?
Also some reference on sorting filtering would be helpful.
Thanks!
Everall
17th December 2010, 16:47
Hi Kode,
I don' know about dataadapter, datareader or dataset in .net but maybe you could have a look at the following examples.
models have there own sorting capabilities without using SQL syntax :
QSqlRelationalTableModel *model = new SqliteRelationaltableModel(this);
model->setTable("employee");
model->setSort(employee_name, Qt::AscendingOrder);
QTableView and headers can help you out also :
QHeaderView *headerH = tableview->horizontalHeader();
headerH->setMovable(true);//DRAG AND DROP IS POSSIBLE NOW
headerH->setClickable(true);
headerH->setSortIndicator(employee_name,Qt::AscendingOrder) ;
headerH->setSortIndicatorShown(true);
tableview->setSortingEnabled(true);
Hope this helps finding more information in the docs.
Cheers,
everall
jameslee
12th June 2013, 04:11
above that is similar my case..
i'v tested sorting&filtering on sqlite with qte-4.7.2.
but Date is not filtered between minimum(1970.1.1) and maximum(2099.12.31). where is wrong point?
model = new QSqlRelationalTableModel(this);
model->setTable("albums");
model->select();
proxyModel = new MySortFilterProxyModel(this);
proxyModel->setDynamicSortFilter(true);
proxyModel->setSourceModel(model);
ui->tableView->setShowGrid(true);
ui->tableView->verticalHeader()->hide();
ui->tableView->setModel(proxyModel);
void userset_Dialog_32::dateFilterChanged()
{
proxyModel->setFilterMinimumDate(ui->fromDateEdit->date());
proxyModel->setFilterMaximumDate(ui->toDateEdit->date());
}
i attached files.
thanks!
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions Inc. All rights reserved.