一、主要特性:
Connector/C++ 是 MySQL 官方提供的一个驱动程序,使得开发者能够用 C++ 语言与 MySQL 数据库交互。
- (01)官方的:没有什么库比官方的更有分量了吧;
- (02)连接和断开连接:库可以创建到 MySQL 服务器的连接,并且当不再需要时断开连接;
- (03)执行 SQL 查询:库可以执行 SQL 查询,并获取查询结果;
- (04)数据绑定:库允许你绑定变量到查询,这样你可以避免 SQL 注入攻击,并提高性能;
- (05)错误处理:库提供了一种机制来处理可能发生的任何错误;
- (06)事务处理:库支持事务处理,使得你可以执行多个查询作为一个单一的、不可分割的操作;
二、快速体验:
#include "jdbc/cppconn/prepared_statement.h"
#include "jdbc/cppconn/resultset.h"
#include "jdbc/cppconn/statement.h"
#include "jdbc/mysql_connection.h"
#include "jdbc/mysql_driver.h"
#include <string>
#include <iostream>
#include <map>
using namespace std;
using namespace sql;
using namespace sql::mysql;
// 编译: g++ -I /data/project/common_libs/mysql-connector-c++-8.1.0/include \
-L/data/project/common_libs/mysql-connector-c++-8.1.0/lib64 \
demo1.cpp -o demo1 -lmysqlcppconn
// 运行: export LD_LIBRARY_PATH=/data/project/common_libs/mysql-connector-c++-8.1.0/lib64
// ./demo1
int main() {
// 注意,为了简明,忽略所有的错误检查
// 1. 初始化: 获取的驱动
// -------------------------------------------------------
MySQL_Driver *driver = get_mysql_driver_instance();
// 2. 进行链接
// -------------------------------------------------------
Connection *conn = driver->connect("127.0.0.1", "root", "123456");
// 3. 选择数据库【可选】
// ------------------------------------------------------
conn->setSchema("db_test");
// 4. 进行查询
// ------------------------------------------------------
PreparedStatement *prep_stmt = nullptr;
ResultSet *res = nullptr;
string preSql = "select `id`,`name` from `person` limit 5";
prep_stmt = conn->prepareStatement(preSql);
// 执行查询操作
res = prep_stmt->executeQuery();
while (res->next()) {
cout << "id=" << res->getUInt("id") << endl;
cout << "name=" << res->getString("name") << endl;
cout << "-----------------" << endl;
}
// 5. 释放资源
// ------------------------------------------------------
delete res;
delete prep_stmt;
delete conn;
return 0;
}
三、怎么编译安装?
- 需要根据mysql官网指引编译安装,如果遇到问题欢迎留言交流。
本文暂时没有评论,来添加一个吧(●'◡'●)