千家信息网

Linux下C++/C连接MySQL数据库

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,用c++/c连接 MySQL 数据库有两种方法:第一种:利用ADO连接第二种:利用 MySQL 自己的 API 函数进行连接第一种ADO可以连接多种数据库,例如:mysql、sqlserver、ora
千家信息网最后更新 2026年11月02日Linux下C++/C连接MySQL数据库

用c++/c连接 MySQL 数据库有两种方法:
第一种:利用ADO连接

第二种:利用 MySQL 自己的 API 函数进行连接

第一种ADO可以连接多种数据库,例如:mysql、sqlserver、oracle、access等。

第二种API方式只针对mysql数据库的连接,不用安装MyODBC服务器程序。

这儿我用的API方式进行连接mysql数据库,相对于ADO方式效率更高。(后面可以研究第一种方式)


虚拟机的版本:redhat7.0 64bit

数据库的版本:MySQL5.7(已安装好)


1、将解压得到的文件里对应的库,头文件拷贝到系统能找到的位置

例如:我当时安装数据库的文件都在:/usr/local/下

执行:cp /usr/local/include/* /usr/include/

注意,拷贝时,如果*里含有文件夹,则需要用:

cp -r /usr/local/include/* /usr/include/

(cp将递归复制该目录下所有的子目录和文件)

随意写一段测试文件:1.cpp


# include

# include


using namespace std;


int main()

{

MYSQL * connection;

connection = mysql_init(NULL);


return 0;

}


然后用 g++ -o 1 1.cpp -lmysqlcient 编译文件

很不幸,又是意料之中的出现了一个问题:

找不到库文件导致的。

终端输入命令:mysql_config --libs

现在我们编译时加上路径,执行:g++ -L/usr/local/lib/mysql -lmysqlclient -o 1 1.cpp

编译通过。

链接时默认路径为 /usr/local/lib,多了一层目录,我们将mysql下的文件拷贝到lib下

执行:cp /usr/local/lib/mysql/* /usr/local/lib/

此时删不删lib下的mysql文件夹都无碍了。

再次执行 g++ -o 1 1.cpp -lmysqlclient 编译通过。


文件 数据 数据库 方式 编译 拷贝 文件夹 版本 目录 路径 不幸 不用 之中 位置 再次 函数 又是 命令 多种 子目 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 喔噻互联网科技有限公司 互联网科技公司税收优惠 礼当家互联网科技 互联网科技视频 上海卓越科技 互联网 互联网科技公司做什么 联恩商钥互联网科技有限公司 四个字互联网科技公司取名 互联网巨头投资的硬核科技 互联网实体化科技化 互联网企业和科技型企业 互联网科技公司实习生 南博望互联网科技有限公司 山东大美朱楼互联网科技有限公司 新氧科技和美国互联网有关系吗 互联网科技手机排行榜 艺电能源互联网科技有限公司招聘 互联网科技收购价值 深圳互联网科技园地址 互联网科技自媒体灵感 广东猪兼强互联网科技有限公司 为想互联网科技怎么样 互联网是不是新科技 科技信息互联网 北京互联网科技有限公司 沃里互联网科技 恒生科技互联网指数分析 四川互联网展示科技馆设计 宇信科技在杭州互联网排第几 世界互联网科技成果奖
0