Как получить значение в QSqlTableModel?

Моя база данных:

введите описание изображения здесь

Мой код:

QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("sqlite.db");
db.open();

QSqlQuery query;
query.exec("SELECT * from Expenses");

QSqlTableModel *model = new QSqlTableModel(0, db);
model->setTable("Expenses");
model->select();

Как я могу получить значение ИТОГО за «январь 2014»? То есть «1».

1

Решение

http://doc.qt.io/qt-4.8/qsqltablemodel.html#details

 QSqlQueryModel model;
model.setQuery("SELECT * FROM employee");
int salary = model.record(4).value("salary").toInt();

http://doc.qt.io/qt-4.8/qsqltablemodel-members.html

http://doc.qt.io/qt-4.8/qsqlquerymodel.html#record

http://doc.qt.io/qt-4.8/qsqltablemodel.html#rowCount

int second_record_total = model->record(1).value("total").toInt();

или же

int row_count = model->rowCount();
int latest_total = model->record(row_count - 1).value("total").toInt();

Надеюсь, это поможет.

4

Другие решения

например:

QSqlTableModel *userModel=new QSqlTableModel(this);
userModel->setTable("person");
userModel->select();

const int row=0;

qDebug()<<userModel->index(row,9).data().toInt();
1

По вопросам рекламы [email protected]