Как правильно, загружать, читать, удалять, редактировать данные в таблицы mysql в qt?
Не нашел как правильно, загружать, читать, удалять, редактировать данные в таблицы mysql с использованием qt? Понимаю что где-то есть но не нашел. А очень охота сделать правильно, чтобы работало.
Ответы (1 шт):
Автор решения: Sergey Tatarincev
→ Ссылка
на сколько я понимаю речь о визуализации?
наиболее гибким и удобным является использование моделей (гуглим QSqlTableModel и QSqlQueryModel).
Минимум кода, максимум возможностей. например. если БД уже подключена
model = new QSqlTableModel();
ui->tableView->setModel(model); // просто назначаете виджету на форме модель данных
model->setTable("VIEW_NOTIFICATIONS"); // для модели достаточно назначить имя таблицы
model->select(); // и сделать выборку. остальное QT сделает за вас
model->setHeaderData(model->fieldIndex("N_ID"), Qt::Horizontal, QString::fromLocal8Bit("ID")); // Можете также задать заголовки для столбцов
model->setHeaderData(model->fieldIndex("N_DATE"), Qt::Horizontal, QString::fromLocal8Bit("Дата"));
model->setHeaderData(model->fieldIndex("N_TEXT"), Qt::Horizontal, QString::fromLocal8Bit("Текст"));
ui->tableView->setColumnHidden(model->fieldIndex("N_HIDE"),true); // какой-то столбец сделать скрытым
ui->tableView->resizeColumnsToContents();
ui->tableView->resizeRowsToContents();
кроме того почитайте про QSqlTableModel::data(const QModelIndex &index, int role = Qt::DisplayRole). Раскраска, выделение цветом, и прочите манипуляции при отображении вас порадуют.