我正在为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