使用boost.mysql来操作mysql 数据库

准备条件

  1. visual studio 2019

  2. boost库

  3. 安装本地的mysql 服务器,boost.mysql对mysql有版本要求最好8.0+,具体参考官方文档

安装

使用Nuget安装boost

要安装 openssl,否则的话编译其他项目会产生依赖ssl的错误

安装mysql

省略

创建测试用的数据库

省略

使用boost.mysql

官方例子

官方有例子直接参考,这个是依赖asio来实现的,所以要创建asio的一些context

把例子里面的argv[3] 换成localhost,argv[1] 用户名一般是root,argv 是root的密码

有了conn就可以来操作数据库了

执行查询

执行数据绑定插入

获取colomn信息

需要使用元数据

resule.meta()的column_name();注意一点默认是拿不到column_name的,需要设置metadata_mode

conn.set_meta_mode(metadata_mode::full); //这就能拿到column的名称了

异常,错误处理

执行sql语句如果出现错误,会抛出异常,捕获error_with_diagnosics打印错误信息

到这里的话,我们就具备基本的mysql操作能力了,能查询数据,能获取列名,能绑定数据插入,绑定数据查询应该也不在话下,错误原因分析。

备注:如果要操作远程mysql,需要mysql修改权限配置,替换地址即可

相关推荐
小Mie不吃饭14 小时前
MySQL慢查询日志全解析:从配置到优化实践
mysql
Access开发易登软件15 小时前
数据处理中的两大基石:何时选择Excel,何时考虑Access
数据库·信息可视化·excel·vba·access
Alex老夫子15 小时前
android room数据库增加字段注意事项
android·数据库
9稳15 小时前
基于单片机的家庭安全系统设计
开发语言·网络·数据库·单片机·嵌入式硬件
逍遥德15 小时前
Postgresql 系统表作用解释
数据库·后端·sql·postgresql
MonkeyKing_sunyuhua16 小时前
ES文档序号写错的问题的修复
java·数据库·elasticsearch
饱饱要坚持可持续发展观16 小时前
Liquibase preConditions 执行前判断详解
数据库·liquibase
代码煮茶君16 小时前
MySQL 数据库死锁及核心机制全解析
android·数据库·mysql
咕噜企业分发小米16 小时前
豆包大模型在药物研发中的知识检索效率如何?
java·开发语言·数据库
LaughingZhu16 小时前
Product Hunt 每日热榜 | 2026-01-20
数据库·人工智能·经验分享·神经网络·搜索引擎·chatgpt