C++MFC連接MYSQL數據庫


今天分享一下VS2013MFC利用mysql自己的api函數來連接MYSQL數據庫,數據庫的安裝在這里不多說,可以找教程,我主要記錄一下C++MFC連接數據庫。需要說明一點,我使用的VS201332位的,所以MYSQL也必須使用32位的,這樣不會出現莫名奇妙的錯誤。接下來開始步驟:

一:項目配置

1.打開mysql的安裝路徑,找到include文件夾和lib文件夾
如圖:
  

2.打開項目 –> 屬性 –>VC++目錄  
如圖:
   

includelib分別添加到包含目錄和庫目錄即可

3.打開項目 –> 屬性 –> 鏈接器 –> 輸入 –> 附加依賴項
如圖:
  

libmysql.lib添加進去,也可以在cpp文件中手動添加.

4.最后再把libmysql.dll動態庫復制到項目文件下面就可以了。否則運行時會提示缺少此庫。

 

二:代碼編輯

1.連接數據庫:

//初始化數據庫   

mysql_init(&local_mysql);   

//設置數據庫編碼格式   

mysql_options(&local_mysql, MYSQL_SET_CHARSET_NAME, "gbk");   

//連接數據庫

if (!mysql_real_connect(&local_mysql, "localhost", "root", "123456", db_name, 9806, NULL, 0))
    {
        //AfxMessageBox("connect to database failed!");
        return FALSE;
    }

2.執行SQL語句

//定義字符數組,存儲要執行的SQL語句

char sql_select[100];

//將要執行的SQL語句放入數組中

sprintf(sql_select, "SELECT *FROM USERINFO WHERE USER='%s';", user);

//執行語句

if (mysql_query(&local_mysql, sql_select) == 0)//執行查詢語句成功!
{

//執行SQL語句成功

}

3.其它

//檢查是否已經連接了數據庫

if (mysql_ping(&local_mysql) == 0)/
    {
        //AfxMessageBox("數據庫已連接!")
    }

//斷開數據庫連接

mysql_close(&local_mysql);

//獲取SQL執行錯誤結果

mysql_error(&local_mysql);//獲取數據庫錯誤信息

4.獲取數據集

//從執行結果中獲得結果集

MYSQL_RES* result = mysql_store_result(&local_mysql);
MYSQL_ROW row;

// 將結果逐行讀出直到讀完

while (row = mysql_fetch_row(result))
{
 //處理逐行結果   

m_data[i].push_back(m_row[0]);       

m_data[i].push_back(m_row[1]);       

m_data[i].push_back(m_row[2]);       

m_data[i].push_back(m_row[3]);       

m_data[i].push_back(m_row[4]);       

m_data[i++].push_back(m_row[5]); 

}

有任何問題,或者需要后台服務器交流,請聯系我QQ:2769519484


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM