早教吧 育儿知识 作业答案 考试题库 百科 知识分享

MySQL_ROW row;​ row=mysql_fetch_row(result); 这里的row[0],row[1].,这里的row[0],row[1].,是什么类型的数据啊?想对row[ ]结果存放在一个数组里面,怎么办?

题目详情
MySQL_ROW row;​ row=mysql_fetch_row(result); 这里的row[0],row[1].,
这里的row[0],row[1].,是什么类型的数据啊?想对row[ ]结果存放在一个数组里面,怎么办?
▼优质解答
答案和解析
MYSQL_ROW 类型表示的是记录集里的一条数据,假如你的数据表里有10个字段,则
row[0]~row[9]里面保存的就是这10个字段的内容.
如果你不知道有多少个字段,则result对应的数据类型MYSQL_RES里面有一个叫field_count的变量,保存的是字段个数,另外还有个row_count保存的是记录条数,要把结果放到数据里面去,则可以试试下面的代码:
  char cData[10][100];//假设有10个字段,每个字段最大长度为100个字节
  //也可以使用刚才提到的field_count,row_count来动态分配数组
  //取出一条数据 
  row= mysql_fetch_row(result);    
  //遍历每个字段  
  for(int i=0; i < result->field_count; i++)  
  {   
   //把字段值拷贝到数组中去 
   strcpy(cData[i], row[i]);
  }