- 论坛徽章:
- 0
|
本帖最后由 cenalulu 于 2012-12-18 13:00 编辑
第一个:
while(1)
{
MYSQL_ROW row ; //存放一行查询结果的字符串数组
MYSQL_RES *result; //查询结果集,结构类型
//获取结果集保存到result中
if (!(result=mysql_store_result(m_DataProvider))){
fprintf(stderr,"Couldn't get result from %s\n", mysql_error(m_DataProvider));
return false;
}
printf("number of fields returned: %d\n",mysql_num_fields(result));
//读取结果集的内容
while (row = mysql_fetch_row(result)){
printf("table: %s\n",(((row[0]==NULL)&&(!strlen(row[0]))) ? "NULL" : row[0]) ) ;
}
//释放结果集
mysql_free_result(result);
if(!mysql_next_result( m_DataProvider ))
break;
}
第二个:
do {
int fieldCount = mysql_field_count(m_DataProvider);
if(fieldCount <= 0)
break;
MYSQL_ROW row ; //存放一行查询结果的字符串数组
MYSQL_RES *result; //查询结果集,结构类型
//获取结果集保存到result中
if (!(result=mysql_store_result(m_DataProvider))){
fprintf(stderr,"Couldn't get result from %s\n", mysql_error(m_DataProvider));
fprintf(stderr,"%s\n",cmd);
return false;
}
printf("number of fields returned: %d\n",mysql_num_fields(result));
//读取结果集的内容
while (row = mysql_fetch_row(result)){
printf("table: %s\n",(((row[0]==NULL)&&(!strlen(row[0]))) ? "NULL" : row[0]) ) ;
}
//释放结果集
mysql_free_result(result);
}while (!mysql_next_result( m_DataProvider ));
有哪位大牛能帮点评下这两个哪个效率好些吗?(关键是while(1) + mysql_next_result( m_DataProvider ) 跟 mysql_next_result( m_DataProvider ) +mysql_field_count(m_DataProvider) 哪个组合效率高些)在此先多谢点评! |
|