[Interest] Simple sqlite database
Graham Labdon
Graham.Labdon at avalonsciences.com
Mon Jun 15 17:33:26 CEST 2015
Hi
I am trying to open a sqlite database and display it in a QTableView but it is not working.
Here is my code
#include "SimpleDb.h"
#include <QSqlError>
#include <QFile>
#include <QSqlRelationalTableModel>
SimpleDb::SimpleDb(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
m_qsqlDatabase = QSqlDatabase::addDatabase("QSQLITE","TestDatabase.sqlite");
m_qsqlDatabase.setDatabaseName("TestDatabase.sqlite");
if (m_qsqlDatabase.open())
{
QStringList existingTables = m_qsqlDatabase.tables();
m_model = new QSqlTableModel;
m_model->setTable("Table2");
m_model->select();
int columnCount = m_model->columnCount();
ui.tableView->setModel(m_model);
}
else
{
QString err = m_qsqlDatabase.lastError().databaseText();
int a;
a = 10;
}
}
The string list returned by `QStringList existingTables = m_qsqlDatabase.tables();` contains 2 tables and includes the value given to `m_model->setTable("Table2");`
However `columnCount` is zero and no data is shown in my view
I must be doing something wrong but I cannot see what
Please can someone let me know what is wrong
Thanks
More information about the Interest
mailing list