环境:MySQL8.0.35
在MySQL8中,C API (libmysqlclient) is included in MySQL 8.0。因此不需要安装MySQL Connector
- 找到libmysqlclient相关的库文件,头文件放在项目目录下
- 编写项目配置文件CMakeLists.txt如下所示:
#要求最低cmake程序版本
cmake_minimum_required(VERSION 3.12)
#本工程的名字
project(TEST)
#本工程支持的C++版本
set(CMAKE_C_STANDARD 11)
# 添加编译选项,支持UTF-8
add_compile_options("$<$<C_COMPILER_ID:MSVC>:/source-charset:utf-8>")
file(GLOB copyResources "./assets/libmysql.dll")
file(COPY ${copyResources} DESTINATION ${CMAKE_BINARY_DIR}/)
# 包含头文件目录
include_directories(${CMAKE_SOURCE_DIR}/include)
# 添加源文件
add_executable(TEST
connect_mysqld_demo.c
)
# 链接必要的库
target_link_libraries(TEST PRIVATE
${CMAKE_SOURCE_DIR}/third_party/libmysql.lib
)
- 测试程序connect_mysqld_demo.c如下所示:
#include <stdio.h>
#include <mysql.h>
int main()
{
MYSQL m;
MYSQL_RES* res;
MYSQL_ROW row;
//初始化数据库
mysql_init(&m);
//连接数据库
if (mysql_real_connect(&m, "127.0.0.1", "root", "123456", "test", 3306, NULL, 0))
{
printf("数据库连接成功\n");
}
else
{
printf("数据库连接失败,%s\n", mysql_error(&m));
}
mysql_close(&m);
return 0;
}
- 运行结果如下:
![]()

浙公网安备 33010602011771号