如何将结果集设置为字符串指针?

时间:2012-08-08 08:39:53

标签: c++ mysql arrays string

我在mysql中使用结果集来检索结果。

我希望得到字符串数组中的结果,如

  

MYSQL_RES * res = mysql_store_result(mysql);

     

MYSQL_ROW行;

     

while((row = mysql_fetch_row(result)))

     

{

  string *result=row;   //there is only one row in resultset
     

}

     

string * result = row;

它给我错误

  

错误:无法在初始化

中将char **转换为std :: string *

比如何使用字符串?

1 个答案:

答案 0 :(得分:0)

你可以这样实现:

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);

}