====== mysql_data_seek ======
void mysql_data_seek(MYSQL_RES *result, my_ulonglong offset)
==== description of mysql_data_seek ====
mysql_data_seek find any row in a result set.\\
the offset value is a row number from 0 to mysql_num_rows (result) -1.
As required for this feature is that the result set structure contains the entire result set, can mysql_data_seek() may be used only in conjunction with mysql_store_result(), not with mysql_use_result().
#include /* including standard library */
#include
MYSQL *my;
MYSQL_ROW row;
MYSQL_RES *result;
int main( void ){
char host[20];
char user[20];
char pass[20];
unsigned long num_rows = 0;
my = mysql_init(NULL);
sprintf(host,"localhost");
sprintf(user,"username");
sprintf(pass,"password");
if (my == NULL ) {
printf("Cant initalisize MySQL\n");
return 1;
}
if( mysql_real_connect (my,host,user,pass,NULL,0,NULL,0) == NULL) {
printf("Error cant login\n");
} else {
printf("Login correct\n");
}
mysql_select_db(my, "test");
mysql_query(my, "SELECT * FROM collection WHERE 1;");
result = mysql_store_result(my);
num_rows = (unsigned long) mysql_num_rows(result);
printf("num_rows %li\n", num_rows);
mysql_data_seek(result, 1);
while ((row = mysql_fetch_row(result))) {
printf("%s %s %s\n", row[0], row[1], row[2]);
}
mysql_close(my);
return 0;
}
===== output of mysql_data_seek c example =====
Login correct
num_rows 2
2 othername othertitle