如何参数化数据库检查点和参数化SQL
如何参数化数据库检查点和参数化SQL那位大虾指点一下,最好能给个例子,不胜感激!谢谢 lz能否具体说明一下需求?我们好对应解决
参数化数据库检查点的明确需求
1.参数化SQL语句就是SQL查询中至少有一个字段使用了参数,这个查询就是参数化查询。以航班预定软件为例,SQL语句如下:
SELECT Flights.Departure, Flights.Flight_Number, Flights.Day_Of_Week
FROM Flights Flights
WHERE (Flights.Departure=?) AND (Flights.Day_Of_Week=?)
为了执行查询中的参数,必须给参数指定值,怎么定义一个数组?怎么把数组的值指定给它,请斑竹指点!
2.参数化数据库检查点
当你创建参数化数据库检查点时,脚本中会插入db_check语句。db_check功能有parameter_array变量。例如:
db_check(“list1.cdl”, “dbvf1”, NO_LIMIT, dbvf1_params);
parameter_array变量包含替换这些参数的值。
录制脚本时,WR不能捕捉期望结果集。和常规数据库检查点不同,参数化的检查点需要额外步骤来捕捉期望结果集。
因此,必须使用数 组语句来添加用来替换参数的值。这个怎么用数组语句来添加值?请指点!
3.真的谢谢斑竹花时间来回复我帖子!我想学习winrunner的同行都会感谢斑竹无私的奉献!!! 1. lz可以在脚本中编写数据库连接和查询语句,这样对sql语句的参数化会更主动一些,可以搜索一下本版内关于数据库参数化的帖子,另外可以看一下我之前写过的一个帖子,大概了解一些WR中对数据库的操作语句:http://www.51testing.com/?5939/action_viewspace_itemid_1415.html
2. 参数化数据库检查点有些复杂,用WR自带的flight举例吧,lz可以首先录制一个插入的操作,之后在脚本中插入一个custom check 的数据库检查点,选择Specify SQL statement 在下一步选择连接的时候,选择WR自动安装上的Flight32(见附图1),在下面的Editbox中写SQL语句,将你要参数化的部分用问号“?”代替,如:“SELECT Flights.Flight_Number, Orders.Order_NumberFROM Flights, OrdersWHERE (Orders.Customer_Name=?)”,点击下一步,这时WR会弹出提示告诉你参数化了部分语句,注意这时WR是没有捕捉到你的预期结果的,因为你的条件并不完全,所以这时你查看数据库检查点的时候会有如下提示(见附图2)。关闭Check Database窗体的时候还会提示如下(间附图2),选择NO,不改变选择,之后ok即可。回到脚本在这条查询语句前声明并赋值一个数组,如对应上面的customer_name,这里声明为dbvf_params ="dionysus";这时需将WR的回放模式变为Update运行一下,让WR更新一下数据,以后就可以使用Verify模式回放了
3.工作日我很少有时间来这里一一回复,只能尽我的能力来回答,大家遇到不会的问题可以首先搜索一下类似的问题,可以学到很多知识,同时也希望其他WR老手高手能不吝赐教,打造一个学习和讨论氛围浓厚的WR板块,谢谢!sdlkfj3
[ 本帖最后由 dionysus 于 2007-4-15 21:47 编辑 ]
页:
[1]