Well, that looks like it should work. Sqlite will create the DB if none exists, so it almost always executes the open() successfully, even if the DB is not found.
You can do db.tables() and print the result (or just the count), to determine if the DB is really there.
You can also do something like this
to determine if the file is there (before opening the DB).
QMessageBox::information(0, "", QString("File exists: %1").arg(info.exists()));
QMessageBox::information(0, "", QString("Path: %1").arg(info.absoluteFilePath()));
QMessageBox::information(0, "", QString("Size: %1").arg(info.size()));
And then you can do something like this
to convert the file name into an absolute path that Sqlite will accept.
absoluteName = QDir::toNativeSeparators(info.absoluteFilePath());
(And I suspect I've just figured out what's wrong. Did you install you app on other than the C: drive? Sqlite doesn't like that, unless you use the absoluteFilePath trick above to get the full path name.)