• mysql C API的使用


    MySQL++简介》介绍了如何使用C++来访问mysql,本文记录下使用C API访问mysql,mysql++就是对本文介绍的C-API的封装。

    常用函数(名字就能告诉我们用法):

    MYSQL * mysql_init(MYSQL *mysql)
    int mysql_options(MYSQL *mysql,enum mysql_option option,
                  const char *arg)//设置一些如编码等属性
    MYSQL * mysql_real_connect(MYSQL *mysql, const char *host,
                 const char *user,
                 const char *passwd,
                 const char *db,
                 unsigned int port,
                 const char *unix_socket,
                 unsigned long clientflag) //建立连接
    int mysql_query(MYSQL *mysql, const char *q) //执行sql语句,Zero for success. Nonzero if an error occurred.
    my_ulonglong mysql_affected_rows(MYSQL *mysql) //更新语句影响的行数
    MYSQL_RES * mysql_store_result(MYSQL *mysql) //与mysql_use_result效果等同,获取sql执行结果
    MYSQL_RES * mysql_use_result(MYSQL *mysql)
    my_ulonglong mysql_num_rows(MYSQL_RES *res)  //获取行数
    MYSQL_ROW mysql_fetch_row(MYSQL_RES *result) //逐一取行
    void mysql_free_result(MYSQL_RES *result)
    void mysql_close(MYSQL *sock) 


    使用实例:

    #include <mysql.h> 
    int main() {
        MYSQL* mysql = mysql_init(NULL);
        mysql_options(mysql, MYSQL_SET_CHARSET_NAME, "gbk");
        mysql_real_connect(mysql, "10.38.72.33", "test_user", "test_pwd", "test_db", 3306, NULL, 0); 
        
        string sql("select name, age from student");
        mysql_query(mysql, sql.c_str());
        
        MYSQL_RES* res = mysql_store_result(mysql);
        MYSQL_ROW row;
        if (res == NULL) {
          cout << "query failed" << endl;
          return -1; 
        }   
        while ((row = mysql_fetch_row(res)) != NULL) {
            cout << "name:" << row[0] << ",age:" << row[1] << endl;
        }   
        mysql_free_result(res);
        
        mysql_close(mysql);
        return 0;
    }
  • 相关阅读:
    vue父子组件通信
    canvas(一)
    js中的this
    git中遇到的问题
    javaScript中各种数据结构的遍历
    git合并多个提交
    vue学习笔记(三)——vuex—store配置
    vue学习笔记(二)——路由配置
    0欧电阻的作用
    STM32L系列单片机内部EEPROM的读写
  • 原文地址:https://www.cnblogs.com/whuqin/p/4982005.html
Copyright © 2020-2023  润新知