qt靜態編譯時無法載入資料庫外掛程式

2021-06-20 05:35:03 字數 361 閱讀 6130

在動態編譯qt程式時,當把程式拷貝到目標機器上時,如果想要使資料庫可以執行,必須在程式的同級目錄下建立plugins/qsqldrivers 資料夾,然後把資料庫外掛程式放進去。但是當靜態編譯時,這一招就不管用了,可看見靜態庫下面的qsqldrivers裡面沒有dll檔案,無法被動態載入。

解決這個問題的方法是,在.pro檔案裡新增qtplugin+=qsqlite,這樣就可以了。

文件如下:

經過分析,qt裡面資料庫載入的原理是qsql的lib只是對各個資料庫外掛程式的一層封裝,並不具體實現資料庫的功能。各個資料庫外掛程式才是實現資料庫底層功能的庫。所以不要以為包含了lib下面的qsql.lib就可以實現資料庫功能了。必須還要包含plugins下面的sqldriver

QT編譯Mysql資料庫驅動

看到mysql的客服端,想著用qt做出個大概模型出來,首先的問題就是qt下的mysql驅動需要自己去編譯,一直想著在qt上編譯mysql驅動,但是一直沒實行或者遇到一點小問題又終止了。下午剛好對qt又有了較大的興趣,所以下定決心要搞定這乙個。最開始還是失敗,不過沒有遇到以前編譯的種種錯誤,所需的.a...

QT編譯支援Firebird資料庫

firebird是典型的嵌入式資料庫。所謂嵌入式資料庫,簡單地說就是不需要單獨資料庫伺服器安裝配置,只需要在應用軟體中加入客戶端介面就可以直接把乙個檔案當做資料庫訪問。而firebird則是出自borland公司的interbase資料庫,為後者的開源免費版本。筆者最早最早接觸的是sqlite,後來...

QT下mysql資料庫無法連線

qt編譯器連線mysql資料庫環境的搭建分成以下三步 mysql必須為32位且mysql資料庫安裝不能帶空格是安裝的所以路徑。1.qt開發環境的搭建 2.mysql資料庫開發環境的搭建 3.qt連線mysql資料庫驅動的編譯。接下來本文將詳細講述這三步該如何操作。第一步qt開發環境的搭建 1.從選擇...