0
bool isOpen = database.open();
QSqlQuery query(database);
qDebug("is the database open %d",isOpen);
bool result = query.exec("SELECT * FROM scales");
該數據庫是在另一種方法啓動了一個全局變量:QSqlQuery失敗
database = QSqlDatabase::addDatabase("QSQLITE", "first");
database.setDatabaseName("database.db");
bool result = database.open();
在兩種情況下,數據庫是開放(返回true),但是當我運行查詢,則返回false
。我在終端中運行了相同的SQL,並且它可以工作,所以SQL不應該有任何問題。那麼爲什麼查詢不能執行?
打印我QSqlError的lastError後(1,「無法執行語句」,「沒有這樣的表:秤」)
它混淆了我,當我檢查命令行的分貝它確實存在,是拼寫正確。我能想到的唯一事情是它連接到不同的數據庫文件?
什麼是錯誤? ('QSqlQuery :: lastError') – Mat
你在哪裏創建'scales'表? – cmannett85
如果未找到數據庫文件,則在open()中創建一個空文件。 – Leiaz