0

結果を取得するために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

}

文字列*result= row;

エラーが発生します

エラー:初期化時にchar**をstd::string*に変換できません

文字列の使い方より?

4

1 に答える 1

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

}
于 2012-08-08T09:13:22.493 に答える