我正在研究qt,我的数据库与qt正确连接但突然我每次调试时都有以下问题,,, ii变得无法获取或从数据库中添加数据,,, i不知道什么事情,但我是qt的新手。
是的,有人可以帮忙,这是一个紧急情况 这里是代码QSqlQuery :: exec:数据库未打开
db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DSN='';DBQ=C:/Users/user/Desktop/Final_Version/db.accdb");
db.close();
db.open();
QSqlQuery query;
query.exec("Select ID from TestId");
while(query.next())
{
TestId = query.value(0).toInt();
}
db.close();
//==================================================================================
答案 0 :(得分:1)
您需要在sqldrivers文件夹中为Microsoft Access Driver添加qsql dll文件
如果您正在调试,请检查以下内容
如果您要分发您的应用程序,您只需复制sql驱动程序文件夹以及您的可执行文件以及所需的dll。
编辑与数据库连接绑定的QSqlQuery对象
db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("DRIVER={Microsoft Access Driver (*.mdb};FIL={MSAccess};DBQ=C:/Users/user/Desktop/Final_Version/db.mdb");
database.open();
QSqlQuery query(db);
query.exec("Select ID from TestId");
while(query.next())
{
TestId = query.value(0).toInt();
}
db.close();
我认为,其中一些可以帮助你...... :)
答案 1 :(得分:1)
QSqlQuery *query = new QSqlQuery(db);
我认为可以帮到你! :)