Qt中連線Mysql資料庫的方法

2021-06-20 07:06:31 字數 933 閱讀 6856

qt中連線mysql資料庫的方法

行而上

qt中連線mysql資料庫並不複雜,qt幫助中也有詳細的**例子,現舉例如下:

qsqldatabase m_defdb =qsqldatabase::adddatabase( "qmysql" );

m_defdb.sethostname( "localhost" );

m_defdb.setdatabasename( "mydb" );

m_defdb.setusername( "root" );

m_defdb.setpassword( "123456" );

if ( ! m_defdb.open() )

qmessagebox::critical(null,"error information", m_defdb.lasterror().text(), messagebox::ok,qmessagebox::cancel );

return true;

事實上你按這這段**作是連線不上mysql的,你得到只是一出錯資訊

「can't create tcp/ip socket(10093qmysql)」,使你不知所措,其實這可能是qt的乙個bug,你可以嘗試連線另一資料庫,如"qpsql"不管成功與否,再連線mysql,你會發現連線成功了!

正如錯誤資訊所示:tcp/ip socket 出錯了,你在連線資料庫之前應該先做初始化,**如下: #include"winsock2.h"

#include "windows.h"

wsadata wsadata;

if (wsastartup(makeword(2,0), &wsadata) !=0)

qfatal("wsa startup failed");

程式編譯時,在工程中增加附加依賴項 ws2_32.lib ok,相信看到這裡,你就可以在輕鬆的連線mysql資料庫了.

Qt連線MySql資料庫

qt連線mysql資料庫首先得保正當前編譯機中有符合自己編譯環境的mysql驅動,驅動編譯過程可以參照 連線資料庫 如下 qsqldatabase sql qsqldatabase adddatabase qmysql 選擇資料庫 sql.setdatabasename mydatabase 設定要...

Qt連線mysql資料庫

qt連線mysql資料庫提示driver not loaded driver not loaded問題 方法1 把mysql安裝路徑的 libmysql.dll 拷貝到qt的安裝路徑d qt qt5.4.0 5.4 mingw491 32 bin下 如果還不能解決問題,這很有可能是 qt的版本與my...

Qt連線mysql資料庫

最近在學習qt,連線資料庫的時候缺少動態庫,在網上找了各種方法都部怎麼完善,現記錄我解決的過程 qt5是不自帶mysql的驅動的,連線mysql需要兩個dll動態庫檔案,qsqlmysql.dll 和libmysql.dll 第乙個檔案需要手動編譯,第二個檔案可以從mysql的bin目錄下複製 從m...