loadrunner通过odbc测mysql数据库语句

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: #include "lrd.h" Action() {double trans_time;  //定义一个double型变量用来保存事务执行时间 static LRD_INIT_INFO InitInfo = {LRD_INIT_INFO_EYECAT}; static...

#include "lrd.h"

 Action()

 {

double trans_time;  //定义一个double型变量用来保存事务执行时间


 static LRD_INIT_INFO InitInfo = {LRD_INIT_INFO_EYECAT};

 static LRD_DEFAULT_DB_VERSION DBTypeVersion[] =

 {

   {LRD_DBTYPE_ODBC, LRD_DBVERSION_ODBC_30},

   {LRD_DBTYPE_NONE, LRD_DBVERSION_NONE}

 };

 static LRD_CONTEXT FAR * Ctx1;

 static LRD_CONNECTION FAR * Con1;

 static LRD_CURSOR FAR *     Csr1;

 //上面的定义的代码如果录制脚本,在vdf.h中就有定义,同时还有一些其他文件

//如果手写脚本,则需要手工添加,主要是定义各种变量

//查询行数

unsigned long count=0;



 //初始

lrd_init(&InitInfo, DBTypeVersion);

 //打开上下文

lrd_open_context(&Ctx1, LRD_DBTYPE_ODBC, 0, 0, 0);

 //申请连接的内存

lrd_alloc_connection(&Con1, LRD_DBTYPE_ODBC, Ctx1, 0 /*Unused*/, 0);

 //打开连接,注意DRIVER就是上面安装的

lrd_open_connection(&Con1, LRD_DBTYPE_ODBC, "", "","", "DRIVER=MySQL ODBC 3.51 Driver;UID=bydapp;PWD=Rootuser;SERVER=10.66.64.20;DATABASE=bydfans; PORT=3306", Ctx1, 1, 0);

 //打开游标

lrd_open_cursor(&Csr1, Con1, 0); 



lr_rendezvous("selectmysql");

lr_start_transaction("selectmysql");


 //Sql语句,注意1代表的意思是,立马执行

lrd_stmt(Csr1, "select n_user_id, c_user_accounts, c_user_password, c_user_name, c_user_phone, c_user_mail, c_user_status, c_user_reg, c_user_second, c_phone_token, c_account_weight_value, c_user_no "

               "from t_user_account "

               "WHERE ( c_user_accounts = 'wuguo' and c_user_password = 'e10adc3949ba59abbe56e057f20f883e' and c_user_status = '1' )",

          -1, 1, 0 /*None*/, 0);



lrd_stmt(Csr1, "select * from t_user_account", -1, 1, 0 /*None*/, 0);


trans_time=lr_get_transaction_duration( "selectmysql" ); //获得该SQL的执行时间


lr_output_message("start_select事务耗时 %f ", trans_time); //输出该时间

lr_end_transaction("selectmysql", LR_AUTO);



 //统计行数到count变量中

lrd_row_count(Csr1, &count, 0); 

 //打印消息

lr_message("count= %d",count);

 //先关闭游标

lrd_close_cursor(&Csr1, 0);

 //再关闭连接

lrd_close_connection(&Con1, 0, 0);

 //释放连接,和alloc相呼应,否则有内存泄露

lrd_free_connection(&Con1, 0 /*Unused*/, 0);

 //再关闭上下文

lrd_close_context(&Ctx1, 0, 0);

 //完毕,返回0


 return 0;

 } 


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
8月前
|
关系型数据库 MySQL 数据库连接
QT安装mysql驱动和使用ODBC连接mysql
上一篇博文中提到了mysql的使用,但是很多人在使用新版Qt连接mysql的时候出现连接不上或者是没有mysql驱动的问题,网上有很多博文写了这个问题。但是对于最新版的mysql,使用网上的那些编译办法无法完全解决driver not loaded的问题,接下来我将写一篇文章详细的说一下如何解决该 问题,并且介绍一下除了使用驱动连接mysql,还可以使用odbc连接mysql。
172 0
|
3月前
|
SQL 存储 缓存
SQL语句在MySQL中是如何执行的
SQL语句在MySQL中是如何执行的
42 0
|
SQL 存储 缓存
一文搞懂MySQL中一条SQL语句是如何执行的
一文搞懂MySQL中一条SQL语句是如何执行的
|
9月前
|
SQL 存储 Oracle
数据库访问和组件技术相关概念(ADO、ActiveX、DLL、ODBC等)详解
数据库访问和组件技术相关概念(ADO、ActiveX、DLL、ODBC等)详解
QGS
|
11月前
|
SQL 编译器 数据库连接
Centos7配置ODBC连接SQL server数据库
yum install unixODBC unixODBC-devel 如有错误请指正,谢谢
QGS
389 0
|
12月前
|
SQL 关系型数据库 MySQL
Loadrunner脚本优化-参数化之关联MySQL数据库获取数据
Loadrunner脚本优化-参数化之关联MySQL数据库获取数据
67 0
QGS
|
SQL 数据库连接 编译器
(Centos7-x86)通过ODBC连接SQL server数据库
记(Centos7-x86)通过ODBC连接SQL server数据库
QGS
181 0
(Centos7-x86)通过ODBC连接SQL server数据库
|
SQL 存储 Oracle
ODBC连接数据库详细说明
ODBC连接数据库详细说明
|
SQL 关系型数据库 MySQL
软件开发入门教程网之MySQL GROUP BY 语句
软件开发入门教程网之MySQL GROUP BY 语句
|
SQL 关系型数据库 MySQL
软件开发入门教程网 之MySQL DELETE 语句
软件开发入门教程网 之MySQL DELETE 语句