Здравствуйте! Возникла проблема при создании QSqlTableModel. Объявляю и инициализирую правильно, а все равно каждый раз QSqlError(-1, "Unable to find table ", ""). Дело точно не в таблице, в других программах отображается правильно.
Объявляю в модуле класса как указатель, инициализирую по открытию подключения:
myMySQLCon=QSqlDatabase();
myMySQLCon.close();
QSqlDatabase::removeDatabase("DataServer");
myMySQLCon=QSqlDatabase::addDatabase("QMYSQL", "DataServer");
myMySQLCon.setHostName(gHost);
myMySQLCon.setUserName(gUser);
myMySQLCon.setPassword(gPass);
myMySQLCon.setPort(gPort);
myMySQLCon.setDatabaseName("ForTest");
if(myMySQLCon.open())
{
tableMdl=new QSqlTableModel(this);
tableMdl->setTable("Test1");
tableMdl->setEditStrategy(QSqlTableModel::OnManualSubmit);
tableMdl->select();
qDebug()<<tableMdl->lastError();
ui->tableView->setModel(tableMdl);
}
tableMdl->setTable(myMySQLCon.driver()->escapeIdentifier("ForTest", QSqlDriver::TableName));
Но это может не работать в Qt 4.4 и ниже
проблема как-то сама собой решилась, спасибо за внимание!
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)