我正在爲mysql c api構建一個類包裝,特別是在mysql_real_escape_string的時刻,我不認爲我做得很對。C++ Mysql C API mysql_real_escape_string
這是我對功能:
std::string Database::EscapeString(const char *pStr)
{
char *tStr = new char[strlen(pStr)*2+1];
mysql_real_escape_string(m_sqlCon, tStr, pStr, strlen(pStr));
string retStr(tStr);
delete [] tStr;
return retStr;
}
我試圖通過運行這個,但如預期在MySQL錯誤,結束了它沒有執行。
具體是什麼導致了mysql錯誤?你有沒有嘗試使用printf或cout打印結果字符串(包括tStr和retStr),然後再將它們送入mysql?結果是什麼? – 2009-11-29 01:39:20