在C语言中连接到MySQL数据库通常需要使用MySQL的C API库(MySQL Connector/C)。以下是一个简单的示例,展示如何使用C语言连接到MySQL数据库并执行一个简单的查询。
环境准备
-
安装MySQL和MySQL Developer Libraries:
-
在Linux上,你可能需要安装以下包:
sudo apt-get install libmysqlclient-dev
- 在Windows上,请确保你已经安装了MySQL,包括其头文件和库文件。
-
-
编写C代码:
- 创建一个名为
mysql_example.c
的C文件,然后编写如下代码:
- 创建一个名为
#include <mysql/mysql.h>
#include <stdio.h>
#include <stdlib.h>
int main() {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
char *server = "localhost";
char *user = "your_username";
char *password = "your_password"; /* set me first */
char *database = "your_database";
conn = mysql_init(NULL);
/* Connect to database */
if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {
fprintf(stderr, "%sn", mysql_error(conn));
exit(1);
}
/* send SQL query */
if (mysql_query(conn, "show tables")) {
fprintf(stderr, "%sn", mysql_error(conn));
exit(1);
}
res = mysql_use_result(conn);
/* output table name */
printf("MySQL Tables in database %s:n", database);
while ((row = mysql_fetch_row(res)) != NULL)
printf("%s n", row[0]);
/* close connection */
mysql_free_result(res);
mysql_close(conn);
return 0;
}
-
编译和运行:
-
在Linux上,使用以下命令来编译和运行:
gcc -o mysql_example mysql_example.c `mysql_config --cflags --libs` ./mysql_example
-
在Windows上,使用以下命令进行编译:
gcc -o mysql_example mysql_example.c -I"path_to_mysql_include" -L"path_to_mysql_lib" -lmysqlclient
然后运行生成的可执行文件。
-
说明
mysql_init(NULL)
初始化一个MYSQL对象。mysql_real_connect
用于建立到数据库的连接。mysql_query
执行一个SQL查询。mysql_use_result
获取查询结果。mysql_fetch_row
逐行获取结果集。- 最后使用
mysql_free_result
和mysql_close
释放资源和关闭连接。
如果遇到困难或需要更详细的操作步骤,请参考MySQL的官方文档或者其C API编程指南。
发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/179376.html