阅读量:0
要使用CMake编译MySQL客户端程序,首先确保已经安装了MySQL服务器和客户端库
创建一个新的文件夹,例如
mysql_client_cmake
,并在其中创建两个文件:CMakeLists.txt
和main.cpp
。编辑
CMakeLists.txt
文件,添加以下内容:
cmake_minimum_required(VERSION 3.0) project(mysql_client_cmake) set(CMAKE_CXX_STANDARD 11) # 添加MySQL客户端库 find_package(MySQL REQUIRED) include_directories(${MYSQL_INCLUDE_DIRS}) add_executable(mysql_client main.cpp) # 链接MySQL客户端库 target_link_libraries(mysql_client ${MYSQL_LIBRARIES})
- 编辑
main.cpp
文件,添加以下内容:
#include<iostream> #include<mysqlx/xdevapi.h> int main() { const std::string url = "mysqlx://username:password@localhost"; try { mysqlx::Session session(url); mysqlx::Schema schema = session.getSchema("test"); mysqlx::Table table = schema.getTable("test_table"); // 插入数据 table.insert("name", "age") .values("John Doe", 30) .execute(); // 查询数据 mysqlx::RowResult result = table.select().execute(); std::cout << "Rows in the table:"<< std::endl; for (const auto &row : result) { std::cout<< row[0].get<std::string>() << ", "<< row[1].get<int>()<< std::endl; } } catch (const std::exception &e) { std::cerr << "Error: " << e.what()<< std::endl; return 1; } return 0; }
请将username
和password
替换为实际的MySQL用户名和密码。
- 打开终端或命令提示符,导航到
mysql_client_cmake
文件夹,然后运行以下命令:
mkdir build cd build cmake .. make
- 编译完成后,运行生成的可执行文件:
./mysql_client
这将连接到MySQL服务器,插入数据并查询数据。请注意,这个示例使用了MySQL Connector/C++ 8.0的X DevAPI,因此需要MySQL 8.0或更高版本。如果你使用的是较旧的MySQL版本,可能需要使用不同的API。