当前位置:首页 > 行业动态 > 正文

C语言操作MySQL基础连接访问技巧

在C语言中操作MySQL,首先需要安装MySQL C API库,然后使用mysql.h头文件中的函数进行连接、查询等操作。以下是一个简单的示例:,,“ c,#include ,#include ,,int main() {, MYSQL *conn;, MYSQL_RES *res;, MYSQL_ROW row;,, char *server = "localhost";, char *user = "your_username";, char *password = "your_password";, char *database = "your_database";,, conn = mysql_init(NULL);, if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {, fprintf(stderr, "%s,", mysql_error(conn));, exit(1);, },, if (mysql_query(conn, "SELECT * FROM your_table")) {, fprintf(stderr, "%s,", mysql_error(conn));, exit(1);, },, res = mysql_use_result(conn);, while ((row = mysql_fetch_row(res)) != NULL) {, printf("%s,", row[0]);, },, mysql_free_result(res);, mysql_close(conn);,, return 0;,}, “,,在这个示例中,我们首先初始化一个MYSQL结构体,然后使用mysql_real_connect()函数连接到数据库。接着,我们执行一个简单的查询语句,并使用mysql_use_result()和mysql_fetch_row()函数获取查询结果。我们释放结果集并关闭连接。

C语言操作MySQL基础连接访问技巧

1. 安装MySQL C API库

在开始使用C语言操作MySQL之前,需要先安装MySQL C API库,可以通过以下命令进行安装:

sudo aptget install libmysqlclientdev

2. 包含头文件

在C程序中,需要包含以下头文件:

#include <stdio.h>
#include <stdlib.h>
#include <mysql/mysql.h>

3. 创建数据库连接

使用mysql_init()和mysql_real_connect()函数创建数据库连接:

MYSQL *conn;
conn = mysql_init(NULL);
if (!mysql_real_connect(conn, "localhost", "username", "password", "database", 0, NULL, 0)) {
    fprintf(stderr, "%s
", mysql_error(conn));
    exit(1);
}

4. 执行SQL查询

使用mysql_query()函数执行SQL查询:

if (mysql_query(conn, "SELECT * FROM table_name")) {
    fprintf(stderr, "%s
", mysql_error(conn));
    exit(1);
}

5. 处理查询结果

使用mysql_store_result()和mysql_fetch_row()函数处理查询结果:

MYSQL_RES *result = mysql_store_result(conn);
if (result == NULL) {
    fprintf(stderr, "%s
", mysql_error(conn));
    exit(1);
}
int num_fields = mysql_num_fields(result);
MYSQL_ROW row;
while ((row = mysql_fetch_row(result))) {
    for (int i = 0; i < num_fields; i++) {
        printf("%s ", row[i] ? row[i] : "NULL");
    }
    printf("
");
}

6. 释放资源

使用mysql_free_result()和mysql_close()函数释放资源:

mysql_free_result(result);
mysql_close(conn);

7. 完整示例

以下是一个完整的示例,展示了如何使用C语言连接MySQL数据库并执行查询:

#include <stdio.h>
#include <stdlib.h>
#include <mysql/mysql.h>
int main() {
    MYSQL *conn;
    MYSQL_RES *result;
    MYSQL_ROW row;
    int num_fields;
    conn = mysql_init(NULL);
    if (!mysql_real_connect(conn, "localhost", "username", "password", "database", 0, NULL, 0)) {
        fprintf(stderr, "%s
", mysql_error(conn));
        exit(1);
    }
    if (mysql_query(conn, "SELECT * FROM table_name")) {
        fprintf(stderr, "%s
", mysql_error(conn));
        exit(1);
    }
    result = mysql_store_result(conn);
    if (result == NULL) {
        fprintf(stderr, "%s
", mysql_error(conn));
        exit(1);
    }
    num_fields = mysql_num_fields(result);
    while ((row = mysql_fetch_row(result))) {
        for (int i = 0; i < num_fields; i++) {
            printf("%s ", row[i] ? row[i] : "NULL");
        }
        printf("
");
    }
    mysql_free_result(result);
    mysql_close(conn);
    return 0;
}

通过以上步骤,可以使用C语言连接MySQL数据库并执行查询操作。

0

随机文章