Clion连接MySQL数据库:实现C/C++语言与MySQL交互

确保你的电脑里已经有了MySQL。

1、找到MySQL的目录

2、进入lib目录

3、复制libmysql.dll和libmysql.lib文件

4、将这俩文件粘贴到你的clion项目的cmake-build-debug目录下

如果不是在这个目录下,运行时会出以下错误报错:
进程已结束,退出代码为 -1073741515 (0xC0000135)
5、修改CMakeLists.txt文件

原始文件内容:

cpp 复制代码
cmake_minimum_required(VERSION 3.27)
project(clion)

set(CMAKE_CXX_STANDARD 17)

add_executable(clion main.cpp)

修改后:

cpp 复制代码
cmake_minimum_required(VERSION 3.27)
project(clion)

include_directories(D:\\MySQL\\mysql-8.1.0-winx64\\include)#添加的,需要根据你的位置修改
link_directories(D:\\MySQL\\mysql-8.1.0-winx64\\lib)#添加的,需要根据你的位置修改
link_libraries(libmysql)#添加的,这块不用根据你的情况更改,直接使用

set(CMAKE_CXX_STANDARD 17)

add_executable(clion main.cpp)

target_link_libraries(clion libmysql)#添加的,需要根据你的项目名修改

注意:
include_directories(D:\\MySQL\\mysql-8.1.0-winx64\\include)
link_directories(D:\\MySQL\\mysql-8.1.0-winx64\\lib)

这里的目录位置是你的MySQL安装的位置,对应如下两个文件夹

target_link_libraries(clion libmysql)

这里的clion是你的项目名。

其他地方保持和我给出的一致即可。

6、#include <mysql.h>即可

包含mysql.h之后,就可以正常使用MySQL啦!以下是代码示例:

cpp 复制代码
#include<bits/stdc++.h>
#include <mysql.h>
using namespace std;
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
int main(void){
    conn = mysql_init(NULL);
    /*连接数据库部分*/
    
    /*输入你的数据库信息*/
    const char *server = "localhost";
    const char *user = "root";
    const char *password = "123456";
    const char *database = "base";
    
    /*尝试连接*/
    if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {
        std::cerr << "数据库连接失败: " << mysql_error(conn) << std::endl;
        return 1;
    }
 
    /*关闭数据库*/
    mysql_close(conn);
    return 0;
}

记得对数据库初始化就行。不初始化,还是会报错,报错的原因跟本文想要做到的事情无关了,属于实现问题。

初始化语句:conn = mysql_init(NULL);

不对数据库初始化,报错: 进程已结束,退出代码为 -1073741819 (0xC0000005)

相关推荐
嵌入式学习和实践23 分钟前
C语言-BCD码转换为十进制的测试和说明
c语言·转换·bcd码
徐子元竟然被占了!!6 小时前
Linux-systemctl
linux·数据库·oracle
喵了meme6 小时前
C语言实战4
c语言·开发语言
智者知已应修善业6 小时前
【求中位数】2024-1-23
c语言·c++·经验分享·笔记·算法
YJlio8 小时前
Active Directory 工具学习笔记(10.8):AdInsight——保存与导出(证据留存、共享与二次分析)
数据库·笔记·学习
suoyue_zhan8 小时前
GBase的管理监控平台GEM实践指南
数据库
哈哈老师啊9 小时前
Springboot学生综合测评系统hxtne(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·spring boot
小小8程序员9 小时前
Redis-10
数据库·redis·缓存
liuzhilongDBA9 小时前
从collation mismatch异常到其原理
数据库·version·glibc·postgres·collation