vs配置MySQL connector C++

参考文章:如有侵权,联系删帖!

1、版权声明:本文为ZEEKLOG博主「hbwhypw」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.ZEEKLOG.net/hbwhypw/article/details/148299750

2、版权声明:本文为ZEEKLOG博主「Eclips3」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:​​​​​​https://blog.ZEEKLOG.net/weixin_44343938/article/details/141568106

具体操作在后面,这几个说明是为了给大家一些提示,小心有坑哦,我就是被这个坑恶心到了!所以有了此篇文章,这也是我第一次写博客,欢迎各位批评指正。

避坑说明:

Connector C++的Debug、Release需要与Visual Studio的Debug、Release 一 一对应,官网没有特别说明,容易踩坑。

版本选择说明: 目前有3个大版本,1.x、8.x、9.x,1.x基本不再使用,一般至少会选择 8.x+。

Connector C++的早期版本依赖Boost库,从1.x开始,到8.x减少使用,再到9.x完全移除。

其中,8.x版本比较乱,从1.x~8.0.22,需要安装Boost库;从8.0.23开始,不需要安装Boost库。

其中,从8.1.0开始,不再提供32位版本。

其中,从9.x版本开始,附加依赖项区别于8.x的(mysqlcppconn.dll和mysqlcppconn8.dll),而是改为(mysqlcppconn.dll

和mysqlcppconnx.dll)。

方式连接说明:

从8.0开始,不但支持传统的JDBC方式连接,还支持新的X DevAPI方式连接。

假如只使用JDBC方式连接,就必须导入mysqlcppconn依赖项,而不需要导入mysqlcppconn8。

假如只使用X DevAPI方式连接,就必须导入mysqlcppconn8依赖项,而不需要导入mysqlcppconn。

假如既要使用JDBC方式,又要使用X DevAPI方式,就必须两种全部都要导入。

想要使用X DevAPI,必须启用X Protocol 功能,好在安装的时候,默认就是启用的。

具体步骤:

1、先下载所需对应版本的压缩包,这里演示的是debug版的下载和配置,下载链接MySQL :: Download MySQL Connector/C++ (Archived Versions)

2、选择解压缩位置(任意即可,建议放在自己的绿色软件文件夹)

文件夹内的结构:

3、打开vs,右键项目,点击属性

4、在 “C/C++” -> “常规” -> “附加包含目录” 中,添加解压缩文件夹下的include目录

5、在 “链接器” -> “常规” -> “附加库目录” 中,添加解压缩文件夹下的lib64/vs14/debug目录

6、在 “链接器” -> “输入” -> “附加依赖项” 中,输入解压缩文件夹下的lib64/vs14/debug目录中的mysqlcppconn.lib和mysqlcppconn8.lib

注意:如果直接输入中间要用英文 ; 间隔, 如果是编辑的话就要换行

7、在解压缩文件夹下的lib64目录下,找到libcrypto-1_1-x64.dll和libssl-1_1-x64.dll这两个文件,并且将其复制到项目x64目录下的debug或者release文件夹下(根据不同需求放入不同文件夹)(绿色方框中是下一步8、所需要做的)

8、在解压缩文件夹下的lib64\debug目录下,找到mysqlcppconn-9-vs14.dll,将其复制到项目x64目录下的debug或者release文件夹下(根据不同需求放入不同文件夹)(上一步7、已经提过如何操作)

9、 JDBC连接方式头文件:#include <mysql/jdbc.h>

10、X DevAPI连接方式头文件:#include <mysqlx/xdevapi.h>

有些错误,在参考文章1、的最后有提到以供参考。

Read more

无线蜂窝网络:编织世界的无形之网

无线蜂窝网络:编织世界的无形之网

🔥作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生,研究方向无线联邦学习 🎬擅长领域:驱动开发,嵌入式软件开发,BSP开发 ❄️作者主页:一个平凡而乐于分享的小比特的个人主页 ✨收录专栏:无线通信技术,本专栏介绍无线通信相关技术 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 无线蜂窝网络:编织世界的无形之网 无线蜂窝网络是世界通信的基石,它通过“蜂窝”般的小区划分,让几十亿人能够随时随地无线通话、上网。我将从核心原理、工作流程、代际演进以及与Wi-Fi的对比等几个维度,为你展开这幅无线世界的全景图。 一、 什么是蜂窝网络?—— 从一个比喻开始 想象一下,你要在一个巨大的操场上举办一场派对,需要让所有人都能听到音乐。 * 方案A(大广播): 在操场中央放一个超级大喇叭。 * 问题: 离得近的人震耳欲聋,离得远的人听不清;而且大家不能同时点歌(信道有限)。 * 方案B(蜂窝派对): 把操场分成许多小格子,每个格子里放一个小音箱。每个音箱只负责覆盖自己的小格子。 * 好处: 每个人都能听清;相邻的格子可以播放不同的音乐(

By Ne0inhk
构建基于 Rust 与 GLM-5 的高性能 AI 翻译 CLI 工具:从环境搭建到核心实现全解析

构建基于 Rust 与 GLM-5 的高性能 AI 翻译 CLI 工具:从环境搭建到核心实现全解析

前言 随着大语言模型(LLM)能力的飞速提升,将 AI 能力集成到终端命令行工具(CLI)中已成为提升开发效率的重要手段。Rust 语言凭借其内存安全、零成本抽象以及极其高效的异步运行时,成为构建此类高性能网络 IO 密集型应用的首选。本文将深度剖析如何使用 Rust 语言,结合智谱 AI 的 GLM-5 模型,从零构建一个支持流式输出、多语言切换及文件批处理的 AI 翻译引擎。 本文将涵盖环境配置、依赖管理、异步网络编程、流式数据处理(SSE)、命令行参数解析以及最终的二进制发布优化。 第一部分:Rust 开发环境的系统级构建 在涉足 Rust 编程之前,必须确保底层操作系统具备必要的构建工具链。Rust 虽然拥有独立的包管理器,但在链接阶段依赖于系统的 C 语言编译器和链接器,尤其是在涉及网络库(如 reqwest 依赖的 OpenSSL)

By Ne0inhk
RUST异步微服务架构的最佳实践与常见反模式

RUST异步微服务架构的最佳实践与常见反模式

RUST异步微服务架构的最佳实践与常见反模式 一、项目优化前的问题分析 1.1 任务调度不合理 💡在第21篇项目中,用户同步服务的任务调度使用了Cron调度器,但Cron调度器的精度有限,可能导致任务执行延迟。此外,任务的并发度没有配置,可能导致任务积压。 1.2 I/O资源限制不足 订单处理服务的TCP连接队列大小没有配置,可能导致连接失败。数据库连接池的大小没有配置,可能导致数据库连接耗尽。 1.3 同步原语使用不当 实时监控服务中,Redis连接没有使用连接池,可能导致连接开销过大。任务结果的处理没有使用批量操作,可能导致上下文切换过多。 1.4 错误处理不完善 任务失败的处理逻辑不够完善,没有进行任务重试和错误统计。服务之间的通信没有进行超时管理和错误处理。 二、异步架构设计模式的应用 2.1 命令查询分离(CQS) CQS是一种架构设计模式,将系统的操作分为命令和查询两种类型。命令用于修改系统状态,查询用于获取系统状态,两者互不干扰。 在项目中,我们可以将用户同步任务视为命令操作,将系统状态查询视为查询操作: // 用户同步任务(

By Ne0inhk
Flutter 组件 test_track 适配鸿蒙 HarmonyOS 实战:全链路追踪与灰度治理,构建全场景 A/B 测试与特性分发架构

Flutter 组件 test_track 适配鸿蒙 HarmonyOS 实战:全链路追踪与灰度治理,构建全场景 A/B 测试与特性分发架构

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 test_track 适配鸿蒙 HarmonyOS 实战:全链路追踪与灰度治理,构建全场景 A/B 测试与特性分发架构 前言 在鸿蒙(OpenHarmony)生态迈向精细化运营、涉及多端设备同步实验、大规模特性灰度发布及实时埋点分析的背景下,如何实现高可靠的“特性开关(Feature Flags)”与“用户行为追踪”,已成为决定应用迭代效率与商业决策准确性的“神经中枢”。在鸿蒙设备这类强调分布式协同与离线可用性的场景下,如果 A/B 测试逻辑依然采用简单的在线同步参数,由于由于网络波动或设备流转时的身份不一致,极易由于由于配置缺失导致应用进入不可预知的逻辑分支。 我们需要一种能够实现配置本地快照、支持访客(Visitor)身份关联且具备高可靠异步追踪记录能力的实验治理框架。 test_track 为 Flutter 开发者引入了工业级的分布式实验分发方案。它不仅支持基于标识符的恒定分流,更内置了健壮的离线追踪队列。在适配到鸿蒙

By Ne0inhk