zoukankan      html  css  js  c++  java
  • 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;
    }
  • 相关阅读:
    用 ArcMap 发布 ArcGIS Server FeatureServer Feature Access 服务 PostgreSQL 版本
    ArcMap 发布 ArcGIS Server OGC(WMSServer,MapServer)服务
    ArcScene 创建三维模型数据
    ArcMap 导入自定义样式Symbols
    ArcMap 导入 CGCS2000 线段数据
    ArcMap 导入 CGCS2000 点坐标数据
    ArcGis Server manager 忘记用户名和密码
    The view or its master was not found or no view engine supports the searched locations
    python小记(3)操作文件
    pytest(2) pytest与unittest的区别
  • 原文地址:https://www.cnblogs.com/hushaojun/p/4485180.html
Copyright © 2011-2022 走看看