51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2330|回复: 2
打印 上一主题 下一主题

[原创] 循环中调用数据库函数出错

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-9-22 22:43:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
For Rrow = 2  to EXCELrow + 1

msgbox xlSheet.cells(2,2)

CString = "DRIVER=SQL Server;SERVER=XIONGRQ\SQL2005;UID=saWD=Xiongruiqi123;APP=2007 Microsoft Office system;WSID=XIONGRQ;DATABASE=0623-QTP"
SeString = xlSheet.cells(Rrow,2)
set  bbb = databaseFunction(CString,SeString)
ContractCode = bbb(0)
Browser("XXX").Page("XXX").Frame("ifrmGrid_2").WebElement("innertext:="&ContractCode,"html tag:=NOBR").Click
Browser("XXX").Page("XXX").Frame("Frame").Image("mnuDown").Click
Page("age").WebElement("mnu_rArrow").Click'点击删除
Message = Browser("xxx").Dialog("Microsoft Internet Explorer").Static("xxx!").GetROProperty("text")
If Message = xlSheet.cells(Rrow,1) Then
        Reporter.ReportEvent 0,Message+"校验","通过(不能删除)"
        Browser("xxx").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
else
        Reporter.ReportEvent 1,Message+"校验","失败(应该不能删除)"
End If
Rrow = Rrow +1
Next
CloseExcel(XL)


function databaseFunction(ConnectString,SelectString)
     Dim cmd,sql,Res                                                                                                                                    
    Set Res = Createobject("adodb.recordset")                                                                                                                                 
    Set Cmd = Createobject("adodb.command")
   
    Cmd.activeconnection = ConnectString
    Cmd.commandtype = 1
    Cmd.commandtext = SelectString
   
    Set Res = Cmd.Execute()      第二次运行的时候在这里报错
                                                                                                                                                                                                                                                                                                                                                                                                                                 
        Set databaseFunction = Res
       
    Set Res = nothing                                                                                                                                                        
    Set Cmd.activeconnection = nothing                                                                                                                                         
    Set Cmd = nothing                                                

  end function


Function OpenExcel(BooksName,SheetName,XlApp)
    'Stracfile = PathFinder.Locate(BooksName)
    Set XlApp = CreateObject("Excel.Application")
    Set XlBook = XlApp.WorkBooks.Open(BooksName)
        Set xlSheet = XLbook.Worksheets(SheetName)
    xlApp.Visible = False
    set  OpenExcel  =   xlSheet
End Function

Function CloseExcel(XlApp)
    XlApp.Activeworkbook.save
    XlApp.Quit
    Set XlBook = Nothing
    Set XlApp  = Nothing
End Function

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-9-23 11:24:18 | 只看该作者
你看看你第二次执行循环时,从excel中取到sql语句了吗?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-9-24 12:13:37 | 只看该作者
先释放recordset对象
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-28 08:31 , Processed in 0.073896 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表