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)

相关推荐
Oak Zhang2 分钟前
sharding-jdbc自定义分片算法,表对应关系存储在mysql中,缓存到redis或者本地
redis·mysql·缓存
聂 可 以43 分钟前
Windows环境安装MongoDB
数据库·mongodb
web前端神器43 分钟前
mongodb多表查询,五个表查询
数据库·mongodb
门牙咬脆骨1 小时前
【Redis】redis缓存击穿,缓存雪崩,缓存穿透
数据库·redis·缓存
门牙咬脆骨1 小时前
【Redis】GEO数据结构
数据库·redis·缓存
wusong9991 小时前
mongoDB回顾笔记(一)
数据库·笔记·mongodb
代码小鑫1 小时前
A043-基于Spring Boot的秒杀系统设计与实现
java·开发语言·数据库·spring boot·后端·spring·毕业设计
changuncle1 小时前
MongoDB数据备份与恢复(内含工具下载、数据处理以及常见问题解决方法)
数据库·mongodb
久醉不在酒1 小时前
MySQL数据库运维及集群搭建
运维·数据库·mysql
WindFutrue1 小时前
使用Mybatis向Mysql中的插入Point类型的数据全方位解析
数据库·mysql·mybatis