1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
Grid::Grid(QWidget *parent)
: QWidget(parent)
{
ui.setupUi(this);
//Connecting to the DB
connectDb();
//Configuring model
QSqlTableModel * model = new QSqlTableModel;
model->setTable("TableTest");
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
model->select();
model->setHeaderData(0, Qt::Horizontal, QObject::tr("val1"));
model->setHeaderData(1, Qt::Horizontal, QObject::tr("val2"));
model->setHeaderData(2, Qt::Horizontal, QObject::tr("val3"));
model->setHeaderData(3, Qt::Horizontal, QObject::tr("val4"));
ui.tableView->setModel(model);
ui.verticalLayout->addWidget(ui.tableView);
setLayout(ui.verticalLayout);
QString connection = _db.connectionName();
qDebug() << connection;
/**
QSqlDatabase::database( connection ).close();
QSqlDatabase::removeDatabase( connection );*/
}
Grid::~Grid()
{
//Closing DB
_db.close();
//Removing DB
_db.removeDatabase("qt_sql_default_connection");
QSqlDatabase::removeDatabase("qt_sql_default_connection");
if (_db.isOpen())
qDebug() << "Still opened ?!";
if (_db.isValid())
qDebug() << "Still valid ?!";
/*
QString connection = _db.connectionName();
//Closing DB
_db.close();
//Removing DB
QSqlDatabase::removeDatabase(connection);
QSqlDatabase::database( connection ).close();
QSqlDatabase::removeDatabase( connection );
*/
}
QSqlDatabase Grid::connectDb()
{
_db = QSqlDatabase::addDatabase("QMYSQL");
_db.setHostName("localhost");
_db.setDatabaseName("Qt4TestDB");
_db.setUserName("Qt4");
_db.setPassword("123456");
if (!_db.open())
qDebug() << "Failed to connect to root mysql admin";
return _db;
} |
Partager