在我们写qtp代码连接mysql数据库的时候有可能会遇到一些问题,如图,下面就是我在工作上遇到的一个问题:

e18eb810926c04031cc1a13ec423ebf5.png

当遇到这种问题时,我的问题是因为我在循环,而我的数据集对象又在for循环的外面,所以造成在第二次循环的时候提示上面那个错误。

解决方法:

既然是循环取值,那么数据集的对象的创建就应该写 在for循环里面,数据集的关闭也是如此

Dim Conn,str,sql

Set Conn=CreateObject("ADODB.Connection")

Const ConnectionString="DSN=test;DATABASE=bip;PWD=shubo!@#huayin;PORT=3306;SERVER=202.101.167.125;UID=root"

Conn.Open ConnectionString

for i=1 to DataTable.GetSheet("Action1").GetRowCount

Set str=CreateObject("ADODB.Recordset")'创建数据集实例

str.Open sql,conn,1,1

str.MoveFirst

sql="XXXXXX"

XXXXX

XXXX

str.Close '关闭数据集实例

Set str=Nothing

DataTable.GetSheet("Action1").SetNextRow

Next  '循环完毕

Conn.Close '在for循环外面关闭数据库实例

Set Conn=Nothing

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐