• LoadRunner访问 Mysql数据库


    这是很久以前编写的一个测试案例,那时是为了检查大量往Mysql数据库里插入数据,看一下数据库的性能如何?服务器是否会很快就被写满了。
      前期的准备工作:Mysql 数据库搭建,LoadRunner,libmysql.dll and 网上搜一份LoadRunner访问mysq的公共库。
      Step1:Mysql数据库搭建(这里就不详细讲述如何安装Mysq数据库和创建表了)
      IP:192.168.1.100
      访问名:root
      密码是:123456
      数据库名是:t3db
      访问端口是:3306
      数据库的相关信息就是这样了!
      Step2:LoadRunner如何连接mysql呢?
      以下全都是在网上找到原代码
    int rc;
    int db_connection;
    char *server = "192.168.1.100";   // 数据库的ip地址
    char *user = "root";              // 数据库访问用户名
    char *password = "123456";        // 密码
    char *database = "t3db";          // 数据库名称
    int port = 3306;                  // 访问端口
    int unix_socket = NULL;
    int flags = 0;
    char** result_row;
    int query_result;
    char szSql[256];
    int MySqlInit()
    {
    rc = lr_load_dll("libmysql.dll");
    db_connection = mysql_init(NULL);
    if (db_connection == NULL)
    {
    lr_error_message("Insufficient memory");
    lr_abort();
    }
    if(rc!=0)
    {
    lr_error_message("Load MySql.dll Error!");
    lr_abort();
    }
    rc = mysql_real_connect(db_connection,server, user, password, database, port, unix_socket, flags);
    if(rc == NULL)
    {
    lr_error_message("connect mysql error! %s",mysql_error(db_connection));
    mysql_close(db_connection);
    lr_abort();
    }
    return rc;
    }
    int MySqlUnit()
    {
    // 释放MySQL资源
    mysql_close(db_connection);
    return 0;
    }
    int InsertValue(char* query)
    {
    rc = mysql_query(db_connection,query);
    if (rc != 0)
    {
    lr_error_message("%s", mysql_error(db_connection));
    }
    query = NULL;
    return rc;
    }
    int MySqlQuery(char* szSql)
    {
    rc = mysql_query(db_connection,szSql);
    if(rc != 0)
    {
    lr_error_message("%s",lr_eval_string("?"));
    lr_error_message("%s", mysql_error(db_connection));
    szSql = NULL;
    return -1;
    }
    query_result = mysql_use_result(db_connection);
    if (query_result == NULL)
    {
    lr_error_message("%s", mysql_error(db_connection));
    mysql_free_result(query_result);
    szSql = NULL;
    return -2;
    }
    result_row = (char **)mysql_fetch_row(query_result);
    if (result_row == NULL)
    {
    lr_error_message("Did not expect the result set to be empty");
    mysql_free_result(query_result);
    szSql = NULL;
    return -3;
    }
    mysql_free_result(query_result);
    szSql = NULL;
    return 0;
    }
  • 相关阅读:
    其他
    聚类算法:ISODATA算法
    大神博客
    Fiddldr 教程之:HTTP协议详解(转)
    设计模式之装饰模式的复习
    NOIP 2011 聪明的质监员
    CSP-S2020/NOIP2020模板总结(Updating)
    CSP-S2020/NOIP2020复习指南
    洛谷 U137412 高斯的小宇宙
    NOIP2020模板测试题大全
  • 原文地址:https://www.cnblogs.com/hushaojun/p/4485180.html
Copyright © 2020-2023  润新知