【MySQL】12. C语言与数据库的连接
1. 下载MySQL的连接库
sudo apt install -y libmysqlclient-dev
2. MySQL连接库的常用接口介绍
通过下面的样例了解MYSQL的常用接口:
#include <iostream>
#include <mysql/mysql.h>
using namespace std;const char *host = "localhost";
const char *user = "caryon";
const char *password = "20233962Myl!";
const char *db = "test";
unsigned int port = 3306;int main()
{cout << "mysql version: " << mysql_get_client_info() << endl;// 初始化MYSQL *mysql = mysql_init(nullptr);if (!mysql){cerr << "mysql_init failed" << endl;exit(-1);}// 建立连接if (!mysql_real_connect(mysql, host, user, password, db, port, nullptr, 0)){cerr << "mysql_real_connect failed : " << mysql_errno(mysql) << endl;mysql_close(mysql);exit(-1);}// 设置编码mysql_set_character_set(mysql,"utf8");// 执行CURD操作// 1. 增mysql_query(mysql,"insert into teacher_management(name,idnum) values('李四','123456')");mysql_query(mysql,"insert into teacher_management(name,idnum) values('王五','123457')");mysql_query(mysql,"insert into teacher_management(name,idnum) values('刘六','123458')");// 2. 删mysql_query(mysql,"delete from teacher_management where name = '李四'");// 3. 改mysql_query(mysql,"update teacher_management set name = 'wangwu' where idnum = '123457'");// 4. 查mysql_query(mysql,"select name,idnum from teacher_management");// 将查的的数据保存以来方便显示MYSQL_RES* res = mysql_store_result(mysql);// 获取行和列int col = mysql_num_rows(res);int field = mysql_num_fields(res);for(int i = 0;i < col;i++){MYSQL_ROW line = mysql_fetch_row(res);for(int j = 0;j < field;j++){cout << line[j] << " ";}cout << endl;}// 关闭连接mysql_close(mysql);return 0;
}