2011-08-22 92 views
0

我在qt中編寫了一個小應用程序,用於訪問sqlite數據庫中的一些數據並將其粘貼在表中。我完全陌生的QT和用C++生鏽的所以支持自己一個潛在的愚蠢問題...qt sqlite3先決條件

所以我有一個QTableView和數據庫。我發現在http://doc.trolltech.com/4.3/qsqlquerymodel.html#details一個可愛的小例子,我將在這裏重現爲了方便:

QSqlQueryModel *model = new QSqlQueryModel; 
model->setQuery("SELECT name, salary FROM employee"); 
model->setHeaderData(0, Qt::Horizontal, tr("Name")); 
model->setHeaderData(1, Qt::Horizontal, tr("Salary")); 

QTableView *view = new QTableView; 
view->setModel(model); 
view->show(); 

看起來既美觀又簡單。可惜!事實證明,我使用的qt安裝程序(32位窗口)似乎不包括必要的庫。所以我開始尋找他們。一旦我有了QSqlQueryModel類,我發現它也有一些依賴關係。因此,我打開了一切存儲的gitorious回購協議,並隨後發現如果我想使用sqlite的東西,我需要運行'configure'以便在構建源之前啓用我感興趣的數據庫驅動程序。

我想知道我的qt安裝目錄有點和有一些sql相關的DLL,我不知道他們是什麼。

所以問題是,如果我想使用qtCreator,我該如何讓sqlite和qt很好地交談?

回答

0

我已經完成了Windows構建已經有一段時間了,但據我所知應該預先生成SQLite文件,但我有一種感覺,它只是SQLite2的。

If you've tried the Qt instructions on building the driver它仍然是一個痛苦,只是確保你已經得到了sqlite庫,進入應用程序文件夾並尋找插件/ sqldrivers,那裏將有一個.pro文件來編譯驅動程序,你應該能夠從命令行構建。

+0

支持SQlite3。謝謝 – Sheena

1

Qt SQLite插件是兩個SQL驅動程序插件之一(帶有ODBC),您不需要自己編譯和安裝,因爲它已包含在QtSDK中。

但是QSqlQueryModel中的代碼不包含數據庫連接,因此您應該查看安裝在QtSDK \ Examples文件夾中的更完整示例(其中有一些說明:http://doc.trolltech.com/latest/examples-sql.html)。