我有從QSqlRelationalTableModel派生的類。 我使用SQLite數據庫。 而我需要更改數據庫文件。 我關閉舊的數據庫文件,調用SetDatabaseName(「新文件的路徑」)並打開新的數據庫文件。 現在我只是調用select()模型,但它返回false。 如果我打電話setTable(「表」),並且只有在那之後select(),一切正常... 但是表的名字是一樣的...如何在數據庫連接更改後更新QSqlTableModel更改
我沒有找到任何方法,允許通知模型數據庫連接已更改.... 您是否知道更好的方式來通知模型?
好的。我再次回到了這個話題。
數據庫更改後,我必須調用setTable()具有相同的表名來重新啓動表模型。 我沒有找到一個更好的辦法如何重新初始化表視圖,共同我打電話
pTableView->setModel(NULL);
pTableView->setModel(model);
這會產生很多不必要的代碼調用的,但在其他情況下,表視圖不知道有關表格模型的變化(示例列數)。
我沒有找到更好的方式來重新初始化QSqlTableModel和QTableView。一些想法?
我有一個問題... 是否有可能創建和設置(設置表名......)與QSqlTableModel的數據庫被打開之前, ? 現在我收到錯誤,即使它存在於數據庫中,表「表」也沒有找到... – Funt 2011-12-15 17:00:12