Qt 未加载QSQLITE驱动程序
我正在使用QT创建一个light应用程序,它可以从我的网站向我的SQLITE库添加条目 但我有一个问题: (“QSQLITE”) QSqlError(-1,“,”) 数据库已打开 QSqlQuery::准备:数据库未打开 QSQLRERROR(-1,“驱动程序未加载”,“驱动程序未加载”) 我使用的是Bananapi(Debian 7),安装了QT并从Debian-APT升级 这是我的代码:Qt 未加载QSQLITE驱动程序,qt,sqlite,arm,qt4,debian,Qt,Sqlite,Arm,Qt4,Debian,我正在使用QT创建一个light应用程序,它可以从我的网站向我的SQLITE库添加条目 但我有一个问题: (“QSQLITE”) QSqlError(-1,“,”) 数据库已打开 QSqlQuery::准备:数据库未打开 QSQLRERROR(-1,“驱动程序未加载”,“驱动程序未加载”) 我使用的是Bananapi(Debian 7),安装了QT并从Debian-APT升级 这是我的代码: // Load QSLite driver qDebug() << bdd.drivers(
// Load QSLite driver
qDebug() << bdd.drivers(); //Said : ("QSQLITE")
bdd = QSqlDatabase::addDatabase("QSQLITE");
qDebug() << bdd.lastError();
// Open the database
bdd.setDatabaseName("/var/www/config/database.sqlite");
// Connect to the database
if( ! bdd.open())
{
qDebug() << "ERROR " << EXIT_FAILURE_CANT_OPEN_DATABASE << " : Can't open database";
qDebug() << bdd.lastError();
exit(EXIT_FAILURE_CANT_OPEN_DATABASE);
}
else
qDebug() << "DATABASE OPENED";
query.prepare(....); //Said : QSqlQuery::prepare: database not open.
//加载QSLite驱动程序
qDebug()QSqlQuery
对象应采用默认的数据库连接,但为了以防万一,请尝试创建将bdd作为参数传递的对象(QSqlQuery(bdd);
)。这将迫使它对您的数据库进行查询。如果它不起作用(或者你已经试过了),我们可以想出其他的办法。是的!!!非常感谢:)我从来没有这样做过,但它是有效的,在这种情况下:超级!!!很高兴听到这个消息!我怀疑您在数据库打开之前声明了QSqlQuery
对象。如果要在不传递DB连接的情况下执行此操作,请在创建DB连接后创建查询对象,并将其作为默认连接(前提是之前没有创建其他DB连接)。在任何情况下,结果都是一样的:)反射后哼哼,我想是这样的(我明天在工作时再看)。谢谢你的解释;)QSqlQuery
对象应采用默认的数据库连接,但为了以防万一,请尝试创建将bdd作为参数传递的对象(QSqlQuery查询(bdd);
)。这将迫使它对您的数据库进行查询。如果它不起作用(或者你已经试过了),我们可以想出其他的办法。是的!!!非常感谢:)我从来没有这样做过,但它是有效的,在这种情况下:超级!!!很高兴听到这个消息!我怀疑您在数据库打开之前声明了QSqlQuery
对象。如果要在不传递DB连接的情况下执行此操作,请在创建DB连接后创建查询对象,并将其作为默认连接(前提是之前没有创建其他DB连接)。在任何情况下,结果都是一样的:)反射后哼哼,我想是这样的(我明天在工作时再看)。谢谢你的解释;)