选择多行

时间:2011-03-11 04:34:51

标签: c++ mysql mysql-connector

void BaseMySQL::QueryArray(char *InQuery,std::string outResult[])
{
    query_state = mysql_query(con, InQuery);
    if (query_state !=0) {
    printf("%s",mysql_error(con));
    }
     res = mysql_store_result(con);
     m_fields = (WORD)mysql_num_fields(res);
    while((row = mysql_fetch_row(res))!= NULL) {
        for(int i = 0; i < m_fields; i++)
        {
            outResult[i]=row[i];
        }
    }
    mysql_free_result(res);
}

这个函数使用的方式有用,所以我说我喜欢1000个帐户,而我的查询是

  

“从帐户中选择ID,名称,密码”

我的功能只会让我获得第一行,就像使用std::string acc[20];//array

一样

所以

id=acc[0];
name=acc[1];
password=acc[2];

但是我的问题我无法弄明白我如何选择所有行并使用它?

1 个答案:

答案 0 :(得分:0)

row = mysql_fetch_row(res);
while(row) 
{
    for(int i = 0; i < m_fields; i++)
    {
        outResult[i]=row[i];
    }
    row = mysql_fetch_row(res);
}

像这样改变你的功能。它为我工作。