【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);
相关推荐
橘颂TA8 小时前
【Linux】从 “抢资源” 到 “优雅控场”:Linux 互斥锁的原理与 C++ RAII 封装实战(Ⅰ)
linux·运维·服务器·c++·算法
我命由我123458 小时前
开发中的英语积累 P25:Axis、Stroke、Corner、Interceptor、Declared、Internal
经验分享·笔记·学习·职场和发展·求职招聘·职场发展·学习方法
a187927218318 小时前
MySQL 硬件优化和操作系统优化
数据库·mysql·优化·raid·numa·sysbench·系统参数
CodeAmaz8 小时前
mysql深度分页解决方案大全
mysql·深度分页
BIBI20498 小时前
CentOS 7 安装 MySQL 5.7
linux·mysql·centos·配置·环境搭建·安装教程·服务器运维
扑火的小飞蛾8 小时前
【Ansible学习笔记01】 批量执行 shell 命令
笔记·学习·ansible
华仔啊8 小时前
同事问我 MySQL 用啥排序规则,我差点答不上来
后端·mysql
枫叶丹48 小时前
【Qt开发】Qt系统(三)->事件过滤器
java·c语言·开发语言·数据库·c++·qt
不会c嘎嘎8 小时前
mysql -- 使用CAPI访问mysql服务器
服务器·数据库·mysql
d111111111d8 小时前
STM32 USART接收中断:如何判断数据接收完成?
stm32·单片机·嵌入式硬件·学习·模块测试