const QString PREFIX("puremilk.access.connection");
QString connID=PREFIX+""+"E:\\PROBLEM.mdb";
QSqlDatabaseconnection=QSqlDatabase::database(connID,false);
connection=QSqlDatabase::addDatabase("QODBC",connID);
QString dsn=QString("DRIVER={MicrosoftAccessDriver(*.mdb)};FIL={MSAccess};DBQ=%1").arg("E:\\PROBLEM.mdb");[
connection.setDatabaseName(dsn);
if(connection.open())
{
QSqlQuery query;
query.exec("selectmytypefromproblemtype");
while(query.next())
{
ui->ProblemList->addItem(query.value(0).toString());
}
为什么会提示QSqlQuery::exec: database not open不是已经连接成功了么?