mysql connector c++的一些坑

從第一次寫服務器就用的connector c++ 但是這玩意歷來有各類問題,把我遇到的問題記下來,以備後用。
直接官網下載的win平臺下的庫是md編譯,若是你的項目也是md那沒問題。通常我都是mt,編譯也會正常,可是在result->getStrig時候掛掉會很頭疼,好像是內存釋放問題。若是遇到這種狀況就下載源碼本身編譯mt的mysqlcppconn-static靜態庫就行。最好編2個一個mt,一個mtd。
只一個mysqlcppconn-static還不夠,還須要libmysql.lib庫和libmysql.dll,在這兩個庫都加了後連接說找不到mysql_init一些c函數時,請更換... mysql

添加個預處理定義 CPPCONN_LIB_BUILD ios

 std::istream *stream = result->getBlob(1);
if (stream)
{
    stream->seekg(0, std::ios::end); 
    size_t size = stream->tellg();    //獲取長度
    stream->seekg(std::ios::beg);    //這裏必定要移動到頭部,否則就呵呵了  
    char *buff = new char[size];
    stream->read(buff, size);
    something(buff);
    delete[] buff;    //別忘了釋放
   }
相關文章
相關標籤/搜索