我正在使用 mysql 中的结果集来检索结果。
我想在字符串数组中得到结果
MYSQL_RES *res=mysql_store_result(mysql);
MYSQL_ROW 行;
而((行=mysql_fetch_row(结果)))
{
string *result=row; //there is only one row in resultset}
字符串*结果=行;
它给了我错误
错误:无法在初始化中将 char** 转换为 std::string*
比如何使用字符串?
你可以这样实现:
MYSQL_RES *res=mysql_store_result(mysql);
MYSQL_ROW row;
std::vector< std::vector<std::string> > result;
int num_fields = mysql_num_fields(result);
while ((row = mysql_fetch_row(result)))
{
std::vector<std::string> a_row;
for (int i = 0; i < num_fields; i++){
a_row.push_back(row[i]);
}
result.push_back(a_row);
}