int rc;
int db_connection;
char *server = "192.168.139.207"; // 数据库的ip地址
char *user = "cloud"; // 数据库访问用户名
char *password = "cloudtest"; // 密码
char *database = "sklCloud"; // 数据库名称
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;
}

可将mysqlfunc.c copy到脚本路径下,在globals.h中引用:
// Include Files
#include "lrun.h"
#include "lrd.h"
#include "web_api.h"
#include "lrw_custom_body.h"
#include "my_api.c"
#include "mysqlfunc.c"

安装mysql dll库:
MySQL LoadRunner libraries.zip
解压后
将bin下的dll文件copy到:
D:\Program Files\HP\LoadRunner\bin
将include下的文件copy到:

D:\Program Files\HP\LoadRunner\include

MySQL LoadRunner libraries下载:

http://pan.baidu.com/s/1pL6tNvX

Mysqlfunc.c的更多相关文章

  1. FTS5与DIY

    此文已由作者王荣涛授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. FTS5简介 前文已经介绍了FTS3/FTS4,本文着重介绍它们的继任者FTS5. FTS5是在SQLite ...

  2. APUE之第5章——标准I/O库

    一.知识回顾:文件I/O 文件 I/O 是不带缓冲的 I/O(unbuffered I/O),指每个 read 和 write 都调用内核中的一个系统调用. 对于内核而言,所有打开的文件都通过文件描述 ...

随机推荐

  1. 接口测试工具中 post请求如何传递多维数组

    1,请求参数为数组时,可以采用传递 json格式的形式传递请求参数(字段及字段对应的值如查是字符,都应该用双引号括起来.用单引号会无法识别),后台接收的数据为json . 2,直接以数组格式来请请求 ...

  2. okhttp同步请求流程和源码分析

    在上一次[http://www.cnblogs.com/webor2006/p/8022808.html]中已经对okhttp的同步与异步请求的基本使用有了一了初步了解,这次来从源码的角度来分析一下同 ...

  3. HttpRunner完整笔记(从搭建到应用)

    一.安装 (1)       直接python2 –m pip install HttpRunner,安装完成后,可使用hrun –V 来查看安装版本:python2 pip install -U H ...

  4. PHP下查询游戏《Minecraft》多人游戏 服务器的人数。

    废话不多说,直接上图: 作为一个优雅的Minecraft服务器,肯定需要官网的嗯. 很多服务器的官网都有显示当前服务器在线人数,延迟,每一个子服在线人数,甚至出了个流量图. 我们不搞花里胡哨的查询人数 ...

  5. Win7 右键 新建图标消失的解决办法

    方法一: 把下面一段代码存在一个记事本上,再选择另存为1.cmd,最后运行! regsvr32 /u /s igfxpph.dll reg delete HKEY_CLASSES_ROOT\Direc ...

  6. MySQL_DBA整理

     MySQL_DBA整理(转) 2011-01-26 16:51:41 分类: Mysql/postgreSQL 转自:丁丁:http://www.itpub.net/thread-831154-2- ...

  7. 什么是http协议(一)

    http协议是大家在互联网中最为熟悉的协议,只要上网大家都会遇到,但是,很多人被问道什么是http协议,http协议的内容是什么就懵了.这里,我们随便聊聊http协议. 首先,我们说说协议.我一直觉得 ...

  8. 34.第一次只出现一次的字符(python)

    题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).   两次遍历,第一次存放字 ...

  9. MessagePack Java Jackson Dataformat - POJO 的序列化和反序列化

    在本测试代码中,我们定义了一个 POJO 类,名字为 MessageData,你可以访问下面的链接找到有关这个类的定义. https://github.com/cwiki-us-demo/serial ...

  10. 通过PCI9030向外部RAM写数据失败现象

    我们的系统方案是:以9030作为PCI接口芯片,本地端映射了一片IDT70V06的双端口RAM.进行数据传输压力测试时,发现PC机向IDT70V06写数据偶尔会失败.这一问题是什么原因造成的呢? 最初 ...