linux下C++访问mysql数据库

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

这篇虽然是C++ 的语句,但因为只是练习,图方便就用C风格的方式写了

#include <mysql/mysql.h>
#include <iostream>
#include <string>
#include <cstdlib>
 
int main()
{
    MYSQL *connection;
    MYSQL_RES *result;
    MYSQL_ROW row;
    connection = mysql_init(NULL);
    if(connection == NULL)
    {
        std::cout << "error:" << mysql_error(connection);
        exit(1);            // exit(1)表示发生错误后退出程序, exit(0)表示正常退出
    }
   connection = mysql_real_connect(connection, "localhost", "root", "wei123", "wei",0, NULL, 0); // 建立数据库连接
    if(connection == NULL)
    {
        std::cout << "error:" << mysql_error(connection);
        exit(1);            // exit(1)表示发生错误后退出程序, exit(0)表示正常退出
    }
 
 
 
//查询
    std::string sql = "select * from user";
    mysql_real_query(connection, sql.c_str(), sql.length());
 
    result = mysql_use_result(connection); // 获取结果集
    // mysql_field_count()返回connection查询的列数
    for(int i=0; i < mysql_field_count(connection); ++i)
    {
        // 获取下一行
        row = mysql_fetch_row(result);
        if(row <= 0)
        {
            break;
        }
        // mysql_num_fields()返回结果集中的字段数
        for(int j=0; j < mysql_num_fields(result); ++j)
        {
            std::cout << row[j] << " ";
        }
        std::cout << std::endl;
    }
    mysql_free_result(result);
 
 
 
    mysql_close(connection);
    return 0;
}

要安装mysql-server、mysql-client、devel.

编译语句:g++ text.cpp -o text -lmysqlclient