Как да се свържа с MySQL чрез C

от MySQL UG Bulgaria

Jump to: navigation, search
  #include <mysql.h>
  #include <errmsg.h>
  #define mysqlhost "hostname"
  #define mysqluser "username"
  #define mysqlpass "password"
  #define mysqldbname "database"
  MYSQL *mysql; /* връзка към MySQL */
  MYSQL_RES *mysqlres; /* MySQL резултат */
  MYSQL_ROW mysqlrow; /* ред от данни */
  /* Инициализиране на променливата за връзка */
  mysql=mysql_init(NULL);
  /* връзка с MySQL */
  if (mysql_real_connect(mysql, mysqlhost, mysqluser, mysqlpass, mysqldbname, 0, NULL, 0) == NULL){
    printf("Възникна следната грешка при връзка с MYSQL: %s\n",mysql_error(mysql));
  }
  /* Изпълнение на заявка */
  mysql_query(mysql, query);
  /* Записване на резултата в MYSQL_RES структура */
  mysqlres = mysql_store_result(mysql);
  /* Инциализиране на MYSQL_RES структура без да се записват данните при клиента */
  mysqlres = mysql_use_result(mysql);
  /* Прочитане и показване на данни от заявка */
  unsigned int num_fields;
  unsigned int i;
  
  num_fields = mysql_num_fields(mysqlres);
  while ((mysqlrow = mysql_fetch_row(mysqlres))) {
     for(i = 0; i < num_fields; i++) {
       printf("Поле %i = %s; ", i, mysqlrow[i]);
     }
     printf("\n");
  }
  /* Освобождаване на резултат */
  mysql_free_result(mysqlres);
  /* прекъсване на връзката */
  mysql_close(mysql);
  За повече информация можете да използвате документацията на сайта на MySQL
  http://dev.mysql.com/doc/refman/4.1/en/c.html
Лични инструменти