windows下使用C++操作MySQL数据库

2023-05-16

系统环境
     操作系统:windows 7 64位
     编译环境:visual studio 2015
     MySQL版本: 5.6.31-log MySQL Community Server (GPL)
环境设置
1、将IDE设置为x64平台的,否则编译的时候会有警告,而且有些模块跟64位的MySQL对应不上导致编译链接失败。
     project->项目的properties->configuration manager->切换值x64平台
2、添加头文件路径
     在代码中需要mysql的许多相关头文件,一个做法是把需要的头文件直接拷贝到你的项目中,这些头文件在{mysql主目录}\include中都可以找得到。另一个比较稳妥的做法是,在项目中添加头文件的路径,避免自己人工去查阅相关宏或者函数在哪些头文件中然后再把它拷贝过来。
     做法:project->项目的properties->点击C/C++下的General->找到右边的Additional Include Directores->双击空白处或者下拉后点Edit
     进入下一个对话框之后,点击步骤1的icon,然后选择你安装mysql的目录下的include路径,最后点击OK,完成之后就可以在你的代码中开始#include <mysql>了
     PS:在windows下,一定要在#include <mysql>前#include <Windows>,不然mysql头文件的很多typedef都无法成功。
3、添加库文件
     程序运行的时候需要相关的mysql库文件,这些库文件在{mysql}主目录\lib下,需要把这个路径添加进来,让编译器找得到这些库文件,以便顺利完成链接动作。
     3.1、project->项目的properties->Linker->General->找到Additional Library Directores->双击其右边或者下拉之后点击Edit
     进入下一个对话框之后,添加对应路径,然后点OK
     3.2、完成上述路径添加之后,还要把相关的库文件显示添加进来,比如mysql.lib文件
     步骤:project->项目的properties->Linker->Input->找到Additional Dependencies->双击其右边或者下拉之后点击Edit
     手动输入相关的依赖,比如libmysql.lib,然后点OK。
     至此,程序编写和运行的环境已经完备。具体需要的头文件和引入的依赖可能会因为程序的需求而不一样,要添加什么依赖具体情况具体分析。
代码测试
     个人写了个测试的Demo,支持数据库的增删改查,具体的database,table和字段field可以自己修改。另外需要修改的还有连接数据库时候的ip,用户名,和密码
     Demo地址: https://github.com/mrshen/C2MySQL 
     另外,如果在运行程序的时候弹出windows错误提示对话框,提示缺少libmysql.dll。
解决:将mysql主目录\lib下的libmysql.dll文件拷贝至你项目的x64下的debug目录
参考:
     环境设置参考: VS2015连接mySQL数据库
     代码测试参考: MySQL C API官方手册
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

windows下使用C++操作MySQL数据库 的相关文章

  • 不带 GROUP BY 的聚合查询

    这个查询似乎在我的旧机器上完美运行 但是 在我的 MySQL 5 7 14 和 PHP 5 6 25 的新机器上 它会抛出错误 致命错误 未捕获异常 PDOException 并带有消息 SQLSTATE 42000 语法错误或访问冲突 1
  • 将所有文件与指定目录(和子目录)中的所有文件进行二进制比较

    我需要将目录及其子目录中包含的所有文件与同一目录及其子目录中包含的所有其他文件进行比较 并将匹配文件的路径记录到文本文件或 CSV 我意识到有一些软件工具可以做到这一点 但除非它可以在 Windows 中开箱即用 否则我将不被允许在我的网络
  • 每月获取记录,但如果该月没有记录,则为零

    如果我有以下 SQL 表 Tests id type receiveDate 1 Blood 2012 01 18 2 Blood 2012 01 20 3 Blood 2012 01 18 4 Blood 2012 03 01 5 Blo
  • Windows 10 上的 LibPNG 构建问题

    我试图在 Windows 10 上构建 libpng 以获取 win32 二进制文件 但我认为有一个与 awk 解析带有 CRLF 行结尾的文件相关的问题 我尝试使用 dos2unix 命令转换文件 但没有成功 结果相同 在 make 命令
  • 什么时候应该使用 C++ 而不是 SQL?

    我是一名 C 程序员 偶尔使用 MySQL 来处理数据库 但我的 SQL 知识相当有限 但我肯定愿意改变这一点 目前 我正在尝试仅使用 SQL 查询对数据库中的数据进行分析 但我准备放弃了 转而将数据导入到C 中 用C 代码进行分析 我和同
  • Mac OS X 上的 /proc/self/cmdline / GetCommandLine 等效项是什么?

    如何在不使用 argc argv 的情况下访问 Mac OS X 上的命令行 在 Linux 上 我会简单地阅读 proc self cmdline or use GetCommandLine在 Windows 上 但我找不到 Mac OS
  • 慢速自动增量重置

    我有很多表 由于某些原因 我需要在应用程序启动时调整这些表的自动增量值 我尝试这样做 mysql gt select max id from item max id 97972232 1 row in set 0 05 sec mysql
  • 非常大的字段会对 MySQL 数据库产生负面影响吗?

    我目前正在使用 Django 构建一个网站 并希望托管用户生物样式页面 该页面可能长达几 KB 这些字段不一定需要搜索 但在查找用户名时确实需要提供 将这些数据存储在数据库中会产生负面影响吗 如果我使用带有数据库链接的静态文本文件 我的服务
  • 在 jQuery AJAX 成功中从 MySql 获取特定响应

    好吧 我有这个 ajax 代码 它将在 Success 块中返回 MySql 的结果 ajax type POST url index php success function data alert data My Query sql SE
  • 如何在 SEQUELIZE (nodeJS) 中创建触发器?

    我正在尝试使用sequelize 创建一个触发器 主要思想是创建一个实例CONFIG创建后USER USER MODEL module exports function sequelize DataTypes var User sequel
  • PHP MySql 百分比

    我的问题是关于百分比 我不是专家 所以我会尽力以更好的方式进行解释 我的 mysql 服务器中有一个表 假设有 700 条记录 如下所示 Name country language Birth Lucy UK EN 1980 Mari Ca
  • 如何在MYSQL中将整个字符串小写并保持第一个大写[重复]

    这个问题在这里已经有答案了 我的表栏目 我预期的输出会在列中发生变化 Smith Allen Doyle Dennis Baker Waker 这是我尝试过的 但不起作用 UPDATE TABLE employee SET last nam
  • 将庞大数据库从亚马逊RDS导出到本地mysql

    我在 Amazon RDS 上有一个 mysql 数据库 大约 600GB 数据 我需要将其移回本地专用服务器 但我不知道从哪里开始 每次我尝试初始化 sqldump 时它都会冻结 有没有办法将其移至 S3 甚至可能在开始下载之前将其分成更
  • 如何检测Mysql/innodb中的死锁?

    我知道在 Innodb 中使用事务时不可避免地会发生死锁 并且如果应用程序代码正确处理死锁 它们是无害的 正如手册所说 只需再试一次 所以我想知道 如何检测死锁 死锁是否会发出一些特殊的 mysql 错误号 如果重要的话 我正在使用 PHP
  • MYSQL - 使用逗号分隔字符串作为变量输入的存储过程

    我希望有人能够提供帮助 我已经创建了我的第一个存储过程 没什么花哨的 但是我遇到了问题 我想给它一个字符串输入 例如 1 2 3 4 5 然后它执行一个简单的操作SELECT FROM TABLE WHERE EAN IN VAR 所以存储
  • MySQL 与日语字符

    我试图弄清楚如何创建一个表 以便我可以在其中插入日语名字 现在我有 Type InnoDB Encoding UTF 8 Unicode utf8 Collation utf8 general ci 但是 当我插入字符时 它显示为 当我使用
  • Windows:更改与文件类型关联的应用程序的名称/图标

    我想将 Windows 中的文件类型与特定应用程序相关联 但我需要这样做 以便当用户打开 打开方式 菜单时 列表中应用程序的名称和图标是针对该文件类型自定义的 即 不仅仅是可执行文件的名称和图标 这是因为该二进制文件是一个通用二进制文件 可
  • 从 Powershell 脚本安装 Python

    当以管理员身份从 PowerShell 命令行运行以下命令时 可以在 Windows 11 上成功安装 Python c temp python 3 11 4 amd64 exe quiet InstallAllUsers 0 Instal
  • SQL 最近日期

    我需要在 php 中获取诸如 2010 04 27 之类的日期作为字符串 并在表中找到最近的 5 个日期 表中的日期保存为日期类型 您可以使用DATEDIFF http dev mysql com doc refman 5 1 en dat
  • 内部 while 循环不工作

    这是我项目网页上的代码片段 这里我想显示用户选择的类别 然后想显示属于该类别的主题 在那里 用户可以拥有多个类别 这没有问题 我可以在第一个 while 循环中打印所有这些类别 问题是当我尝试打印主题时 结果只显示一行 但每个类别中有更多主

随机推荐

  • Android-推荐一个视频播放库JZVideo

    最近项目当中有用到视频播放器这个功能 xff0c 分享一个我的开发心得 一般情况下 xff0c 我们不会去写一个视频播放器 xff0c 因为需要很多知识和播放场景考虑 分享一个我使用到的视频播放器的库 xff0c JZVideo 俗称饺子播
  • java zip压缩/解压工具类 ZipUtil

    public class ZipUtil public static void main String args throws Exception String ss 61 new String 2 ss 0 61 34 D adManag
  • echarts纯option制作自定义日历

    type 61 39 custom 39 34 tooltip 34 34 position 34 34 top 34 34 formatter 34 function p var format 61 echarts format form
  • hdparm命令详解

    hdparm命令来自于英文词组 hard disk parameters 的缩写 其功能是用于显示与设定硬盘参数 对于初次接手一块硬盘设备 了解相关性能属性有很好的帮助 nbsp 语法格式 hdparm 参数 设备名 nbsp 常用参数 n
  • Debian中配置JDK的环境

    在安装完Debian后 xff0c 系统中已经包含了open jdk但是该版本的jdk在开发java程序时有可能出现一些错误 xff0c 但对于不是开发而是普通使用的情况下一般没有太多问题 如果想要进行开发java的程序 xff0c 必须更
  • 【工控机开发】debian下安装QT及Opencv

    1 debian下安装QT开发环境 最近有需求要把虚拟机里面的程序直接在一台工控机上跑 xff0c 也就需要搭建相应的开发环境 首先说明下 xff0c debian下安装QT与在ubuntu下应该是有所区别的 xff0c 一开始偶我在deb
  • 考勤统计,一张表查询每月的员工考勤数据

    近期根据公司人事要求 写了一些关于考勤统计的报表 主要是查询员工每月的考勤数据 要求一行数据显示员工的当月的每天的考勤信息 标的样式如下 然后 根据考勤表 写了如下SQL语句 来实现报表的查询 谨以此做记录 以备后续查阅 SELECT De
  • 无法为数据库中的对象分配空间,因为‘PRIMARY‘文件组已满问题处理方式

    今天公司同事反馈 在手机APP端进行业务操作时 提示无法为数据库中的对象分配空间 因为 PRIMARY 文件组已满 如下所示 出现这个问题的原因是数据库中设置了Log日志限制了文件增长 设置如下所示 然后修改了相关设置 解决该问题 一般出现
  • C#如何连接SAP调用SAP接口函数

    在项目中我们经常会遇到SAP与其他应用系统对接的情况 xff0c 如OA对接SAP的FI HR模块 xff0c 生产系统对接SAP的MM模块等等 这里和大家介绍下C 如果调用SAP接口 xff0c 从而调用SAP接口函数 下面先贴出代码 这
  • SQLServer 分页分页查询优化方案,1秒内查询20万条数据的表

    最近在做sql分页查询的话 发现数据表中的数据量非常大的话 使用count 去统计行数的话 还是非常慢的 20多万条数据的表 用count查询 大概在9秒左右 服务器是4核8G内存的 5秒左右的时间 还是比较难以接受的 9秒时间的SQL语句
  • SQL Server 实现邮件发送功能(配置步骤及存储过程源码)

    日常企业开发中经常会遇到邮件推送的场景 我们利用SQL Server也可以实现邮件发送功能 本文主要和大家分享下利用SQL Server实现邮件发送的具体步骤 1 配置邮件服务器 配置邮件服务器 在SQL Server服务器上面选择 管理
  • Android-推荐一个视频压缩库RxFFmpeg

    最近项目当中有遇到上传视频的时候 xff0c 需要做合理压缩的需求 分享一下我使用的视频压缩库 xff0c 希望能帮助遇到同样有视频处理的需求的小伙伴 RxFFmpeg依赖 这个开源库一共有三个版本 xff0c 这里贴两个版本的依赖 xff
  • C# winForm 软件自动升级实现方式

    对于C winform开发者来说 xff0c 软件自动升级功能是一个很重要的功能 作者根据自身经验 xff0c 和大家分享一下软件升级的实现方式 注意 xff1a 本文主要介绍通过WebService升级软件 作者的另一篇通过FTP方式升级
  • 考勤查询统计SQL脚本。

    本文主要记录下平时工作中考勤统计中的SQL脚本 以便于后续翻阅 同时和大家分享一下 不足的地方还请大牛多多给与点评 nbsp 1 首先是查询某员工的考勤记录 可以根据年份 月份 或者时间段查询结果 同时也可以去掉人员筛选条件 查询多个人的考
  • SQL语句删除具有外键约束(foreign key)的表。因为该对象正由一个 FOREIGN KEY 约束引用。

    关于包含外键的表 xff0c 清理数据的时候 xff0c 如truncateTable xff0c 网上大部分的解决办法是 xff0c 删除外键 删除数据 再新建表 这里介绍一种不需要删除外键 xff0c 只需要修改外键属性就可以删除数据的
  • Unicode&ASCII中双向控制字符 U+202D和U+202C

    ASCII编码对照表 911查询 ASCII编码转换 xff0c ASCII码在线查询工具 ASCII 在线转换器 xff0c ASCII码 xff0c ASCII 转码 在线工具 Unicode 中的 BIDI 双向性算法 掘金 1 场景
  • C++魔方阵

    问题描述 输入一个自然数 xff2e xff08 1 amp le N amp le 9 xff09 xff0c 要求输出如下的魔方阵 xff0c 即边长为2 N 1 xff0c xff2e 在中心出现一次 xff0c 其余位置上的数字从外
  • PCM和WAV音频格式的区别,以及python自动转换

    目录 WAV和PCM的简单介绍PCMWAV 关于音频的基础知识声道数channels采样位数bits采样频率sample rate 进阶内容互相转换代码 WAV和PCM的简单介绍 PCM pcm xff1a pulse code modul
  • 解决:“操作无法完成因为其中的文件夹或文件已在另一程序中打开”无法删除文件的问题

    1 xff0c 利用快捷键 xff08 Ctrl 43 Alt 43 delete xff09 打开任务管理器 xff0c 选择其中的性能 xff0c 打开 资源管理器 2 xff0c 搜索下面关联的句柄 xff08 可搜索文件储存的路径
  • windows下使用C++操作MySQL数据库

    系统环境 操作系统 xff1a windows 7 64位 编译环境 xff1a visual studio 2015 MySQL版本 xff1a 5 6 31 log MySQL Community Server GPL 环境设置 1 将