從第一次寫服務器就用的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; //別忘了釋放 }