c++ mysql 配置_C++--mysql相关配置

clion环境配置:

windows下:

1. 在CMakeLists.txt里面添加 mysql的include目录和lib目录

cmake_minimum_required(VERSION 3.15)

project(pro1)

include_directories(D:\\CodeEnv\\mysql\\mysql-5.6.42\\include) //指定头文件目录

link_directories(D:\\CodeEnv\\mysql\\mysql-5.6.42\\lib) //指定链接库目录

link_libraries(libmysql.dll) //指定链接库下具体哪个库set(CMAKE_CXX_STANDARD 11)

add_executable(pro1 main.cpp mysqlTest.cpp mysqlTest.h)

target_link_libraries(pro1 libmysql.dll) //自己添加

可以添加本地安装的mysql的对应路径来引入头文件

也可以在 https://dev.mysql.com/downloads/connector/cpp/  下载C++ connector,解压后将里面的include和lib目录添加到上面的cmakelists.txt

【lib目录下的libmysql.lib文件很小,而libmysql.dll文件很大,可能lib文件里面只有相应函数的声明,而实际的实现在dll文件里,因此上面要指定动态库dll文件】

配置不对会出现的错误:

(1)运行时找不到动态库

返回错误:-1073741515 (0xC0000135)

解决办法:①windows下默认去system32路径下去找动态库,可将 libmysql.lib和libmysql.dll放到该目录下去(实测只需要dll文件)

②运行时指定环境变量为mysql的lib目录:

c8701ccfeb9d02bd9d273692f7d47233.png

(2)运行时错误

返回:-1073741819 (0xC0000005)

原因:指定链接库时没写成  libmysql.dll ,只写了 libmysql,具体原因未知

2. 例子

file.cpp

#include //这个不加,编译不通过

#include "mysql.h"

voidTestMysql()

{

MYSQL*my;//mysql_library_init(0,NULL,NULL);//不加没问题

my=mysql_init(NULL);char ip[]="127.0.0.1";char user[]="root";char pass[]="123";char database[]="testx";int port = 3306;if(mysql_real_connect(my,ip,user,pass,database,port,NULL,0)) {

cout<

}else{

cout<

}

MYSQL_RES*result;

MYSQL_ROW row;intnum,i;if((mysql_query(my,"select * from person")) == 0) {

cout<

}

result=mysql_store_result(my);

num=mysql_num_fields(result);while(row=mysql_fetch_row(result)) {for(i=0;i

cout<

}

cout<

}

mysql_free_result(result);

mysql_close(my);

}

linux环境下:

----------------------------------------------------------------------

vs

1.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值