博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c++访问mysql数据库
阅读量:5058 次
发布时间:2019-06-12

本文共 1309 字,大约阅读时间需要 4 分钟。

首先,把mysql目录下的include放到项目目录下,然后把libmysql.lib和libmysql.dll放到debug目录下。

#include<mysql.h>之前一定要加上#include<windows.h>否则会产生编译错误。

 

#include "stdafx.h"

#include <Windows.h>
#include "include\mysql.h"
#include <iostream>
using namespace std;
#pragma comment(lib,"libmysql.lib")
int _tmain(int argc, _TCHAR* argv[])
{
    MYSQL mysql;
    MYSQL_RES *result=NULL;
    MYSQL_FIELD *fd;
    MYSQL_ROW sql_row;
    int res;
    mysql_init(&mysql);
    if(!mysql_real_connect(&mysql,"172.1.1.1","root","123456","mysql",3306,0,0))
    {
        fprintf(stderr,"Failedtoconnecttodatabase:Error:%s\\n",mysql_error(&mysql));
    }else{
        mysql_query(&mysql,"SET NAMES GBK");//设置编码格式,否则在cmd下无法显示中文
        res=mysql_query(&mysql,"select * from help_category");//不等于0表示出错
        
        if(!res){
            result=mysql_store_result(&mysql);
            if(result){
                int i=0,j;
                cout<<"number of result: "<<(unsigned long)mysql_num_rows(result)<<endl;//获取行号
                
                j=mysql_num_fields(result);//获取列数
                for(i=0;i<j;i++)
                {
                    fd=mysql_fetch_field(result);//获取列名
                    cout<<fd->name<<"\t";
                }
                cout<<endl;
                while(sql_row=mysql_fetch_row(result)){
//获取每行数据
                    for(i=0;i<j;i++)
                    {
                        if(NULL!=sql_row[i]) //防止数据为空
                        cout<<sql_row[i]<<"\t";
                    }
                    cout<<endl;
                }
            }
        }else{
                cout<<"query sql failed!"<<endl;
            }
    }
    if(result!=NULL){
        mysql_free_result(result);//释放结果资源
    }
    mysql_close(&mysql);//断开连接
    system("pause");
    return 0;
}

转载于:https://www.cnblogs.com/duyy/p/3699117.html

你可能感兴趣的文章
iOS开发——缩放图片
查看>>
HTTP之URL的快捷方式
查看>>
满世界都是图论
查看>>
配置链路聚合中极小错误——失之毫厘谬以千里
查看>>
代码整洁
查看>>
蓝桥杯-分小组-java
查看>>
Java基础--面向对象编程1(类与对象)
查看>>
Android Toast
查看>>
iOS开发UI篇—Quartz2D使用(绘制基本图形)
查看>>
docker固定IP地址重启不变
查看>>
桌面图标修复||桌面图标不正常
查看>>
JavaScript基础(四)关于对象及JSON
查看>>
关于js sort排序方法
查看>>
JAVA面试常见问题之Redis篇
查看>>
javascript:二叉搜索树 实现
查看>>
网络爬虫Heritrix源码分析(一) 包介绍
查看>>
__int128的实现
查看>>
Problem - 1118B - Codeforces(Tanya and Candies)
查看>>
jdk1.8 api 下载
查看>>
svn 图标不显示
查看>>