안냐세여.
c api에서 쿼리를 mysql_init(),,,,real_connect,,,,,,,query,,,,,,real_query,,,
,,res=mysql_store_result()....mysql_fetch_row(res)해서
결과를 row[0],row[1]......이렇게 해서 결과를 이용하고 다시
같은 결과를 얻기 위해
mysql_real_query(위와 같은 쿼리문).......res=mysql_store_reslut().....row=mysql_fetch_row(res)
로 하면 결과가 나오지 않습니다.
똑같은 결과를 얻기 전에 mysql_free_result()해도 결과는 나오지 않습니다.
알려주세요..꼭...
참고로 왜 똑같은 결과를 두번 얻을라고 하냐면
먼저 결과의 크기를 안 다음에
그 크기에 맞게 결과를 저장해야 하거든요...
ex)for(i=0;row=fetch_row...;i++){
여기서 결과의 크기를 모두 계산하고
}
for(i=0;row=fetch_row;i++){
여기서 결과를 저장합니다(다른 변수에)
}
--------------------------------------------------------------
위의 글을 쓰고 공부를 해보니까
mysql_data_seek()라는 함수가 있더군요.
그래서 mysql_store_result()하고
그 다음에 mysql_data_seek(res,0);
하니까 Segmentation fault가 나더라구요..
왜 그럽니까? 알려주세요.
|