您的位置:首页 > 文旅 > 旅游 > 重庆网票app下载_广州肇庆疫情最新消息_chrome谷歌浏览器_钟南山今天感染新冠了

重庆网票app下载_广州肇庆疫情最新消息_chrome谷歌浏览器_钟南山今天感染新冠了

2024/12/23 16:59:40 来源:https://blog.csdn.net/Wendy_robot/article/details/142315674  浏览:    关键词:重庆网票app下载_广州肇庆疫情最新消息_chrome谷歌浏览器_钟南山今天感染新冠了
重庆网票app下载_广州肇庆疫情最新消息_chrome谷歌浏览器_钟南山今天感染新冠了

配置MySQL开发环境 

 如果你使用的是基于Debian的系统(如Ubuntu),可以在终端通过如下步骤安装MySQL开发包。

更新软件包列表

 运行以下命令以确保你拥有最新的软件包列表。

sudo apt-get update

安装libmysqlclient-dev开发包

执行以下命令以安装MySQL客户端开发包。

sudo apt-get install libmysqlclient-dev

检查安装的文件

确认mysql.h是否已经正确安装。通常,mysql.h会位于/usr/include/mysql/目录下。

ls /usr/include/mysql/mysql.h

编译程序时指定头文件路径

在编译时,确保编译器能找到mysql.h文件。可以通过-I标志指定头文件路径。

g++ my_program.c -o my_program -I /usr/include/mysql -lmysqlclient

使用API连接数据库并执行插入操作

代码

#include <mysql.h>
#include <stdio.h>
#include <string.h>#define WENDY_DB_SERVER_IP "192.168.32.162"  // 数据库服务器的 IP 地址
#define WENDY_DB_SERVER_PORT 3306             // 数据库服务器的端口号
#define WENDY_DB_PASSWORD "******"            // 数据库用户的密码(这里是真的密码,我手动打码了)
#define WENDY_DB_USERNAME "wendy"             // 数据库用户名
#define WENDY_DB_DEFAULTDB "wendy_db"         // 默认数据库名称#define SQL_INSERT_TBL_USER "INSERT tbl_user(u_name,u_gender) VALUES('robot','man');"  // 要执行的 SQL 插入语句int main(){MYSQL mysql;// 初始化 MySQL 连接句柄if(NULL==mysql_init(&mysql)){printf("mysql_init : %s\n",mysql_error(&mysql));  // 输出初始化错误信息return -1;  // 退出程序,返回错误代码 -1}// 连接到 MySQL 数据库if(!mysql_real_connect(&mysql, WENDY_DB_SERVER_IP, WENDY_DB_USERNAME, WENDY_DB_PASSWORD, WENDY_DB_DEFAULTDB, WENDY_DB_SERVER_PORT, NULL, 0)){printf("mysql_real_connect : %s\n",mysql_error(&mysql));  // 输出连接错误信息return -2;  // 退出程序,返回错误代码 -2}// 执行 SQL 查询(插入语句)if(mysql_real_query(&mysql, SQL_INSERT_TBL_USER, strlen(SQL_INSERT_TBL_USER))){printf("mysql_real_query : %s\n",mysql_error(&mysql));  // 输出执行查询错误信息}// 关闭 MySQL 连接mysql_close(&mysql);return 0; 
}

运行结果 

终端

MySQL数据库 

以下两图为运行mysql.cpp前后的数据库数据,可以看到tbl_user成功插入了一条数据。

使用API连接数据库并执行查询操作

代码

#include <mysql/mysql.h>
#include <stdio.h>
#include <string.h>#define WENDY_DB_SERVER_IP "192.168.32.162"  // 数据库服务器的 IP 地址
#define WENDY_DB_SERVER_PORT 3306             // 数据库服务器的端口号
#define WENDY_DB_PASSWORD "******"            // 数据库用户的密码
#define WENDY_DB_USERNAME "wendy"             // 数据库用户名
#define WENDY_DB_DEFAULTDB "wendy_db"         // 默认数据库名称#define SQL_SELECT_TBL_USER "SELECT * FROM tbl_user;"  // 要执行的 SQL 查询语句int wendy_mysql_select(MYSQL *mysql){// 执行 SQL 查询语句if(mysql_real_query(mysql, SQL_SELECT_TBL_USER, strlen(SQL_SELECT_TBL_USER))){printf("mysql_real_query : %s\n",mysql_error(mysql));  // 输出执行查询错误信息return -3;}// 获取查询结果MYSQL_RES *res = mysql_store_result(mysql);if(res == NULL){printf("mysql_store_result : %s\n", mysql_error(mysql)); return -4;}// 获取结果集中的行数int rows = mysql_num_rows(res);printf("rows: %d\n", rows);// 获取结果集中的列数int fields = mysql_num_fields(res);printf("fields: %d\n", fields);// 遍历结果集的每一行MYSQL_ROW row;while((row = mysql_fetch_row(res))){int i = 0;for(i = 0; i < fields; i++){printf("%s\t", row[i]);  // 打印每个字段的值}printf("\n");}// 释放结果集内存mysql_free_result(res);return 0;
}int main(){MYSQL mysql;// 初始化 MySQL 连接句柄if(mysql_init(&mysql) == NULL){printf("mysql_init 错误 : %s\n", mysql_error(&mysql));  // 输出初始化错误信息return -1;  }// 连接到 MySQL 数据库if(mysql_real_connect(&mysql, WENDY_DB_SERVER_IP, WENDY_DB_USERNAME, WENDY_DB_PASSWORD, WENDY_DB_DEFAULTDB, WENDY_DB_SERVER_PORT, NULL, 0) == NULL){printf("mysql_real_connect 错误 : %s\n", mysql_error(&mysql));  // 输出连接错误信息return -2;  }// 执行查询操作wendy_mysql_select(&mysql);// 关闭 MySQL 连接mysql_close(&mysql);return 0; 
}

运行结果 

推荐一下

0voice · GitHub

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com