1. 程式人生 > >Linux下Qt與mysql建立連線

Linux下Qt與mysql建立連線

授權許可的限制,Qt的開源版本無法提供所有的驅動程式.在mysql的官網上也沒找到提供給Qt的驅動,網上說的編譯方法貌似不適合現在的版本,研究了半天,終於找到一個方法.

系統環境:Kubuntu 11.10

  1. sudo apt-get download libqt4-sql-mysql

把包解壓縮,然後把裡面的so檔案搜出來直接拷貝到你的QtSDK的sqldriver目錄.我的目錄是~/QtSDK/Desktop/Qt/4.8.0/gcc/plugins/sqldrivers.

mysql安裝:

假設你已經安裝mysql 如未安裝:

  1. sudo apt-get install mysql-server mysql-client

mysql安裝後預設是沒有設定root的密碼,需要先更改下mysql的root密碼.

  1. sudo mysqladmin -u root password XXXX

xxxx即為你要給root賬戶的密碼.

進入mysql 建立個測試用的資料庫,我這裡用的是 myqt.

  1. createdatabase myqt;

下面檢測一下Qt是否能和mysql連線,寫個程式檢測下

  1. #include <QtCore/QCoreApplication>
  2. #include <QSqlDatabase>
  3. #include <QDebug>
  4. int main(int argc, 
    char *argv[])
  5. {
  6. QCoreApplication a(argc, argv);
  7. QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
  8. db.setHostName("localhost");
  9. db.setDatabaseName("myqt");
  10. db.setUserName("root");
  11. db.setPassword("123456");
  12. if(!db.open()){
  13. qDebug()<<"Unable to open database";
  14. qDebug()<<"Database connection established"
    ;
  15. }
  16. return a.exec();
  17. }

    在.pro檔案中 QT =那裡需要加上sql

    若能連線便會輸出 Database connection established .

    本文出自 “一陣風” 部落格,請務必保留此出處http://awind.blog.51cto.com/4628868/843139