日期:2014-05-16  浏览次数:20819 次

C连接MySQL进行查询,多个结果符合的情况下,结果保存在哪里
我通过其他列来查询符合条件的主键,多个结果符合,请问存在哪里呢?
result=mysql_store_result(&myCont);//保存查询到的数据到result
if(result)
{
  sql_row=mysql_fetch_row(result);
}
这种情况下,sql_row好像只能保存一条信息?不太懂sql_row的原理,请高人指教!

------解决方案--------------------
result 是个结果集,你需要逐一遍历其中的记录。

建议楼主参考一下MYSQL官方免费手册中的例子。


Example 

MYSQL_ROW row;
unsigned int num_fields;
unsigned int i;

num_fields = mysql_num_fields(result);
while ((row = mysql_fetch_row(result)))
{
unsigned long *lengths;
lengths = mysql_fetch_lengths(result);
for(i = 0; i < num_fields; i++)
{
printf("[%.*s] ", (int) lengths[i],
row[i] ? row[i] : "NULL");
}
printf("\n");
}