【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);
相关推荐
洛水水4 分钟前
数据库连接池详解
数据库·c++·mysql
WL_Aurora6 分钟前
MySQL慢查询分析与优化实战
mysql·性能优化·慢查询·查询优化
小江的记录本6 分钟前
【Java基础】Java 8-21新特性 :JDK17:密封类、模式匹配、Record类(附《思维导图》+《面试高频考点清单》)
java·数据结构·后端·python·mysql·面试·职场和发展
码小猿的CPP工坊7 分钟前
AI时代C++软件开发工程师的思考
c++·人工智能
小江的记录本8 分钟前
【Java基础】集合框架: ArrayList vs LinkedList 核心区别、扩容机制(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
石小千11 分钟前
mysql8全文检索
mysql·全文检索
蜡笔小马14 分钟前
13.C++设计模式-策略模式
c++·设计模式·策略模式
wujt888815 分钟前
mysql 比较数据库
数据库·mysql·oracle
Bechamz17 分钟前
大数据开发学习Day37
大数据·学习
zxd02031117 分钟前
Zabbix7 监控系统学习总结
学习