Czy mógłby mi ktoś pomóc i wyjaśnić dlaczego mi to nie działa:
#include <mysql/mysql.h>
#include <stdio.h>
int main(){
MYSQL *mysql;
MYSQL_ROW row;
MYSQL_RES *result;
unsigned int num_fields;
unsigned int i;
mysql=mysql_init(NULL);
if (!mysql_real_connect(mysql, "ip", "user", "pass", NULL, 0, NULL, 0))
{
fprintf(stderr, "Failed to connect to database: Error: %s\n",
mysql_error(mysql));
}
else {
if(mysql_query(mysql, "SELECT * FROM test"));
//here goes the error message :o)
else {
result = mysql_store_result(mysql);
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] \t", (int) lengths[i], row[i] ? row[i] : "NULL");
}
printf("\n");
}
}
}
mysql_close(mysql);
return 0;
}
W wyniku wykonania programu dostaje błąd: Lost connection to MySQL server at 'reading initial communication packet', system error: 0
Serwer działa na 100% bo mogę się podłączyć przez SqlDeveloper. System Ubuntu. Czy ma ktoś pomysł co jest grane?