使用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修改权限配置,替换地址即可

相关推荐
kka杰6 分钟前
MYSQL-索引
数据库·mysql
Aze..19 分钟前
PVE安装 Ubuntu 服务器版
运维·服务器·数据库
Boilermaker199233 分钟前
[MySQL] 事务的隔离性与 MVCC
数据库·mysql
步步为营DotNet38 分钟前
深度解析DbContext ChangeTracker:实体状态管理与性能优化
数据库·oracle·性能优化
南棱笑笑生38 分钟前
20251205在ubuntu20.04.6下的打包/解压缩tar.bz2压缩包的方法
数据库·postgresql
java_logo39 分钟前
PGADMIN4 Docker 容器化部署指南
运维·数据库·docker·postgresql·容器·数据库系统
a37221077440 分钟前
HikariCP配置 高并发下连接泄漏避免
java·数据库·oracle
缺点内向1 小时前
如何在C#中添加Excel文档属性?
开发语言·数据库·c#·.net·excel
生信大表哥1 小时前
生物信息分析:Singularity容器技术深度解析与实战指南
数据库·r语言·rstudio·生信入门·数信院生信服务器
千百元1 小时前
实时监控磁盘I/O性能
linux·运维·数据库