你笑的时候全世界陪你一起笑,你哭的时候只有你一个人哭

Winrunner数据库连接及操作的常用函数介绍

上一篇 / 下一篇  2006-12-15 11:01:02 / 个人分类:Winrunner 技术

Winrunner中有一个非常好用的数据库检查点功能,它可以提供简洁的数据库连接和检查,只要对ODBC稍作了解即可简单几步就操作完成。但是如果你想对数据库进行更多更“个性化”的操作,则只有自己编写脚本语言来连接和操作了,下面简单介绍几个数据库连接和操作的常用函数,同样是以SQL Server中TD数据库的为例,涉及到的函数有:db_connect,db_execute_query,db_get_field_value,db_get_row,db_get_headers,split,db_disconnect

例子(已经测试可以运行):


#    db_connect连接数据库

if(db_connect("query1","DSN=TD_DOG;Descrīption=TD_DOG;UID=td;PWD=tdtdtd;APP=WinRunner;WSID=TESTLAB2;DATABASE=gpt_gogs_db",30)!=0)
 report_msg("connect error");
else
 report_msg("cnnnect ok");

#    给查询语句赋值 
sql = "select bg_bug_id,bg_status from bug where bg_status='closed'";

#    执行查询,sql_result保存查询到几条记录,只是记录的行数而非记录内容
db_execute_query("query1",sql,sql_result);
report_msg(sql_result); 
 
#    db_get_field_value返回指定行,指定列的单元格内容,注意参数中第一行为#0
sql_record = db_get_field_value("query1","#0","bg_bug_id");
report_msg(sql_record);

#    db_get_row是返回指定行的查询内容,如果你一行中包含很多列,则这一行所有列的制都返回,第一行同样是以0表示

db_get_row("query1",0,sql_row);
report_msg(sql_row);

#    split函数用来分割不同列的值,并保存在数组中(这里我保存在数组line_array里),函数的返回值是数组元素个数,数组第一个元素下标为1
sql_row_num = split(sql_row,line_array);

for(x=1;x<=sql_row_num;x++)    #    循环输出数组中的内容
 report_msg(line_array[x]);

#    db_get_headers函数用来得到查询中的“列头”,在这里例子中我查询两列:bg_bug_id,bg_status 于是那就返回这两列的名字
db_get_headers("query1",column_num,headers);
report_msg(column_num);

#    同样使用split函数把两列的名字存到数组中去
sql_column_num = split(headers,header_array);
for(x=1;x<=sql_column_num;x++)
 report_msg(header_array[x]);


#    最后关闭数据库连接 
db_disconnect("query1"); 


TAG:

Love~莫 引用 删除 Love~莫   /   2008-09-12 11:17:23
挺好的,收藏了
dionysus的个人空间 引用 删除 dionysus   /   2007-04-28 16:41:36
编写两个数据库连接,取到不同查询结果进行比较,这个应该可以吧
引用 删除 favorable   /   2007-04-27 19:34:57
怎样使用winrunner对比不同数据库中的2张表呢?
 

评分:0

我来说两句

Open Toolbar