c++使用mysql的api串連相關問題,mysqlapi

來源:互聯網
上載者:User

c++使用mysql的api串連相關問題,mysqlapi

記錄一下自己使用中的相關問題,方便有同樣問題的同學解決。

  • 關於在VS中的各種配置,看這裡,不過需要注意一下,我現在用的mysql版本是5.6的,已經沒有【MySQL Server \lib\opt】這個路徑了,將這一項設定到【MySQL Server \lib】即可

  • 如果出現如下錯誤:
    1>main.obj : error LNK2019: 無法解析的外部符號 _mysql_server_init@12,該符號在函數 _main 中被引用1>main.obj : error LNK2019: 無法解析的外部符號 _mysql_init@4,該符號在函數 _main 中被引用1>main.obj : error LNK2019: 無法解析的外部符號 _mysql_real_connect@32,該符號在函數 _main 中被引用1>main.obj : error LNK2019: 無法解析的外部符號 _mysql_options@12,該符號在函數 _main 中被引用

    因為按照第一步來的時候,建立的是win32項目,而現在系統、mysql使用的就均是x64的,改成x64即可,操作步驟如下:
    .項目->屬性->組態管理員
    活動解決方案平台,下拉選建立,出現一個新的對號框,在鍵入選擇新平台中選擇X64
    學習自這裡

  • 之後可以寫一個簡單的c程式測試一下是否成功
    #include "winsock.h"  #include "iostream"  #include "mysql.h"  #pragma comment(lib, "ws2_32.lib")  #pragma comment(lib, "libmysql.lib")  using namespace std;        void main()  {      MYSQL mydata;            mysql_library_init(0,NULL,NULL);//初始化MySQL C API庫      mysql_init(&mydata);//初始化mydata的資料結構,mydata是MYSQL對象      mysql_options(&mydata,MYSQL_SET_CHARSET_NAME,"gbk");//串連選項:添加GBK字元集支援            //串連函數      if(mysql_real_connect(&mydata,"localhost","root","1234","demo", 3306, 0, 0) != NULL)          cout<<"database connection OK!"<<endl;  }  

    這裡注意一下,mysql_real_connect函數中的幾個參數(&mydata,"localhost","root","1234","demo", 3306, 0, 0),一般就需要改2,3,4,5幾個參數即可,分別為資料庫位置,使用者名稱,密碼,待串連的資料庫名稱

  • 如果代碼中出現#include "stdafx.h"報錯:ERROR,無法開啟源檔案...,參見這裡
    主要是由於這個標頭檔屬於先行編譯標頭檔,如果在建立項目時候沒有告訴VS相關資訊,當然不認識這是什麼東西了。

  • #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL
    參見這裡

  • c++ fatal error C1083: 無法開啟先行編譯標頭檔:“.\Debug\router.pch”
    參見這裡,這個問題也屬於先行編譯標頭檔問題


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.