#include <mysql.h>
#include <stdio.h>
int main() {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
char *server = "localhost";
char *user = "root";
char *password = ""; // set me first
char *database = "VirtualSoc";
conn = mysql_init(NULL);
/* Connect to database */
if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {
fprintf(stderr, "%s\n", mysql_error(conn));
exit(1);
}
/* send SQL query */
if (mysql_query(conn, "show tables")) {
fprintf(stderr, "%s\n", mysql_error(conn));
exit(1);
}
res = mysql_use_result(conn);
/* output table name */
printf("MySQL Tables in mysql database:\n");
while ((row = mysql_fetch_row(res)) != NULL)
printf("%s \n", row[0]);
/* close connection */
mysql_free_result(res);
mysql_close(conn);
}
Это код целиком. Я пытаюсь подключиться к базе данных под Linux.Подключение к MySQL с клиентом XAMPP в C
Как скомпилировать это?
Почему я получаю сообщение об ошибке mysql.h doesn't exist
?
Нужно ли использовать что-то вроде libmysqlclient-dev или libmariadbclient-dev использовать mysql.h
?
Я не хочу использовать их, я просто хочу подключиться к моему серверу XAMPP как localhost на своей машине. Как я могу это сделать? И еще один вопрос: зачем мне компилировать мой код?
$ GCC -o выходного файла $ (mysql_config --cflags) MySQL-с-api.c $ (mysql_config --libs)
Для начала , попробуйте отформатировать код, чтобы он был действительно читабельным. Отступы и интервалы не имеют значения для компилятора, но это * важно для людей. –
Чтобы прояснить некоторые вещи: у вас нет отдельной службы XAMPP, XAMPP является * распределением * нескольких сервисов, в том числе службой базы данных (MySQL). –