LR关于ODBC测试的一点知识

关于开发数据库Vuser脚本
1、录制与服务器进行通信得数据库应用程序时,Vugen将生成数据库Vuser脚本。VuGen支持下列数据库类型:CtLib/DbLib/Informix/Oracle/ODBC和DB2-CLI;录制出来得脚本中包含描述数据库活动得LRD函数,每个LRD函数均以lrd为前缀;
2、数据库Vuser能够:
    连接到数据库服务器
    提交SQL查询
    检索并处理信息
    断开与服务器得连接
3、自动事务:可以指示VuGen把每个lrd_exec和lrd_fetch函数标记为事务;
   脚本选项:指示VuGen在录制得脚本中自动生成注释;
   思考时间:Vugen自动录制操作者得思考时间。
4、函数顺序:(以Oracle数据库会话过程为例)    
    lrd_init            初始化环境
    lrd_open_connection    连接到数据库服务器
    lrd_open_curosr        打开数据库光标
    lrd_stmt            将SQL语句与光标关联
    lrd_bind_col        将主机变量绑定到列
    lrd_exec            执行SQL语句
    lrd_fetch           提取结果集中得下一条记录
    lrd_commit          提交数据库事务
    lrd_close_cursor    关闭光标
    lrd_close_connection     断开与数据库服务器得连接
    lrd_end             清理环境
 
5、关联函数:
    lrd_save_value        将表单元格得值保存到参数中;该函数置于提取数据之前,将后续lrd_fetch检索到得值分配给指定参数
    lrd_save_col 将占位符描述符值保存到参数中;该函数与设置输出占位符得数据库函数(例如Oracle得某些存储过程) 配合使用
    lrd_sav_ret_param     将返回参数得值保存到参数中(仅适用于CtLib),该函数主要与存储在DbLib中的、生成返回值的数据库过程配合使用。
    注意:如果保存的值无效或为NULL(不返回行),则Vugen将不应用关联。
    lrd_ora8_save_col     将上一个行ID保存到参数中(Oracle)
    注意:如果要关联Lrd_stmt函数中的值,则不支持下列数据类型:日期、时间、和二进制(RAW/VARRAW)
    
原创作品
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
#include "lrd.h" static LRD_INIT_INFO InitInfo={LRD_INIT_INFO_EYECAT}; static LRD_DEFAULT_DB_VERSION DBTypeVersion[]={{LRD_DBTYPE_NONE,LRD_DBVERSION_NONE}}; //这里的LRD_VAR_DESC数据结构声明是很重要的,他是用来存储sql结果数据集的结构体,第一个参数头文件中就是这么写的,第二个参数是最大行数,第三个参数是每一行的最大长度,如果获得的查询结果比定义的长,运行时就会报错,提示列被截断,最后一个参数是查询结果的类型,可以再帮助中的索引输入data types, database,列出的表格中是各种变量类型的名称 static LRD_VAR_DESC NUM ={LRD_VAR_DESC_EYECAT, 10, 32, LRD_DBTYPE_ORACLE, {1, 1, 0},DT_LONG_VARCHAR}; //下面这些句柄等变量的申请都可以照着帮助中的例子写 /***************** 这里省略了,具体见附件 */ Action() { lrd_ora8_stmt(OraStm1,"select service_num from auto_zb_provision where rownum<2",1,0,0); //执行定义的sql,并且将结果行数返回到rownum中 lrd_ora8_exec(OraSvc1,OraStm1,0,0,&rownum;,0,0,0,0,1); //绑定该列 lrd_ora8_bind_col(OraStm1,&OraDef1;,1,&NUM;,0,0); //设定保存列中的某个数据到row中,第二个参数为第几列,第三个参数为第几行(只能保存一个值),最后一个参数就是你想要保存到的parameter名称 lrd_ora8_save_col(OraStm1, 1, 1, 0, "result"); //这个遍历刚才查询的结果,第二个参数0表示就1行,负号表示遍历所有结果,绝对值表示实际有多少行,第三个参数表示一次遍历最大进行多少行(不能大于LRD_VAR_DESC中定义的第二个参数,即最大行数)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值