C中使用MySQL数据库的基本操作(cpp使用mysql)

C中使用MySQL数据库的基本操作

MySQL是一种常用的关系型数据库管理系统,在许多应用程序中被广泛使用。在C语言中,我们可以使用MySQL的C API来与数据库进行交互。本文将介绍MySQL数据库的基本操作,包括连接数据库、执行查询和更新操作。

一、连接MySQL数据库

在C程序中连接MySQL数据库的步骤如下:

1. 引入头文件和链接库:

#include

#pragma comment(lib, “libmysql.lib”)

2. 获取连接句柄:

MYSQL *conn;

conn = mysql_init(NULL);

3. 建立连接:

const char *host = “localhost”;

const char *user = “root”;

const char *password = “password”;

const char *database = “mydb”;

unsigned int port = 3306;

if (!mysql_real_connect(conn, host, user, password, database, port, NULL, 0)) {

fprintf(stderr, “%s\n”, mysql_error(conn));

return 1;

}

如果连接失败,则会输出错误信息并退出程序。

二、执行查询操作

查询MySQL数据库中的记录,需要执行以下步骤:

1. 构造查询语句:

const char *query = “SELECT * FROM mytable”;

2. 执行查询操作:

int ret;

ret = mysql_query(conn, query);

if (ret != 0) {

fprintf(stderr, “Error %u: %s\n”, mysql_errno(conn), mysql_error(conn));

return 1;

}

3. 获取查询结果:

MYSQL_RES *result;

result = mysql_store_result(conn);

if (result == NULL) {

fprintf(stderr, “Error %u: %s\n”, mysql_errno(conn), mysql_error(conn));

return 1;

}

4. 遍历查询结果:

MYSQL_ROW row;

unsigned int num_fields;

num_fields = mysql_num_fields(result);

while ((row = mysql_fetch_row(result)) != NULL) {

for (unsigned int i = 0; i

printf(“%s “, row[i] ? row[i] : “NULL”);

}

printf(“\n”);

}

遍历查询结果时,可以通过mysql_fetch_row函数获取一行数据,再通过遍历数组输出每一列的数据。

三、执行更新操作

更新MySQL数据库中的记录,需要执行以下步骤:

1. 构造更新语句:

const char *update = “UPDATE mytable SET name=’new name’ WHERE id=1”;

2. 执行更新操作:

int ret;

ret = mysql_query(conn, update);

if (ret != 0) {

fprintf(stderr, “Error %u: %s\n”, mysql_errno(conn), mysql_error(conn));

return 1;

}

3. 获取更新结果:

unsigned long num_rows;

num_rows = mysql_affected_rows(conn);

printf(“%lu rows affected\n”, num_rows);

通过mysql_affected_rows函数获取更新的记录数,并输出结果。

四、断开连接

在程序结束时,需要断开与MySQL数据库的连接。可以执行以下步骤:

mysql_close(conn);

以上就是C语言中使用MySQL数据库的基本操作。通过这些操作,可以完成MySQL数据库的常规操作,如查询、更新、删除等。


数据运维技术 » C中使用MySQL数据库的基本操作(cpp使用mysql)