我用的是Qt 5.4.1 for Windows 32-bit (MinGW 4.9.1, 856 MB).sqlite3 32位的.
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QLabel *label = new QLabel("haha");
label->show();
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("test.db");
bool ok = db.open();
if(ok)
{
QSqlQuery query;
bool aa = query.exec("insert into user values('xiaomei','actaction')");
query.exec("insert into user values('xiao','act')");
qDebug()<<aa;
QSqlQuery queryResult;
queryResult.exec("select name from user");
while(queryResult.next())
{
qDebug()<<"first "<<queryResult.value(0).toString();
}
}
return app.exec();
}
然後運行的時候輸出false.就是可以打開數據庫.但是都無法操作.不知道這是什麼原因?之前在32位系統上都能正常運行.難道是我的這個系統是64位的原因嗎? 如果不用sqlite3.sqlite好像也不行.同樣的問題.
64位系統是向下兼容32位的,也就是支持32位的64位的都能運行的,所以和系統沒有關系的;
我想要不是讀寫權限問題;要不就是你數據庫路徑問題了