【MySQL学习】C++外部调用

cpp 复制代码
#include "mysql.h"
MYSQL *mysql;
MYSQL_RES *rec;
MYSQL_ROW row; 

(1)连接

cpp 复制代码
char *server = "localhost";
char *user = "root";
char *password = "hello";
char *database = "mysql";
mysql = mysql_init(NULL);
if(!mysql_real_connect(mysql, server, user, password, database, 0, NULL, 0))
    printf("Connect Failed: %sn\n", mysql_error(mysql));
else
    printf("Connect Succeed ! \n");

(2)运行

cpp 复制代码
string str="show databases;";
if(mysql_real_query(mysql,str.c_str(),str.length()))  
{  
    cout << mysql_error(mysql) << endl;  
    return -1;  
}  

(3)显示结果

cpp 复制代码
rec=mysql_store_result(mysql);
while(row = mysql_fetch_row(rec))  
{  
    for(int i = 0;i < mysql_num_fields(rec);i++)  
    {  
        if(row[i] != NULL)  
            cout << row[i] << "\t";  
        else  
            cout << "<null>" << "\t";  
    }  
    cout << "\n";  
}  

(4)释放记录

cpp 复制代码
mysql_free_result(rec);

(5)关闭连接

cpp 复制代码
mysql_close(mysql);

(6)获取记录数

cpp 复制代码
mysql_num_fields(rec);
相关推荐
01_ice15 分钟前
MySQL库和表的操作
数据库·mysql
Bruce_Liuxiaowei2 小时前
从零到可运行:基于 Vue3 + FastAPI + DeepSeek-V3 的 AI 英语单词学习系统全栈实战
人工智能·python·学习·fastapi·全栈·智能体
码匠许师傅2 小时前
【C++ 面试真题】聊聊 C++ 的序列容器
java·c++·面试
这个DBA有点耶2 小时前
从库延迟的“二次放大”效应:一次大事务,拖垮整个读写分离
数据库·mysql·架构
C++ 老炮儿的技术栈2 小时前
Qt5.9.1 Windows 完整开发环境搭建流程
开发语言·c++·windows·qt·编辑器·代码化
一个有温度的技术博主3 小时前
MySQL 三大日志协同机制:redo log、undo log 与 binlog 的联合运作
数据库·mysql·oracle
键盘会跳舞3 小时前
C++:std::tuple 源码级深度拆解——变参模板、SFINAE与模板元编程核心技巧
开发语言·c++·sfinae·变参模板
bkspiderx3 小时前
从零开始:VS Code搭建C/C++开发环境全指南(Windows/macOS/Linux)
c语言·c++·windows·vs code·c/c++开发环境
东华万里3 小时前
第40篇C++核心基础与工程实践:从底层逻辑到避坑指南
开发语言·c++·面试·大学生专区
雪的季节3 小时前
OPENCV学习(补充1)
人工智能·opencv·学习