51Testing软件测试论坛

标题: [求助] rs.open 执行完成后,不再执行后面的代码就退出了 [打印本页]

作者: Emao_521125    时间: 2013-1-22 17:08
标题: [求助] rs.open 执行完成后,不再执行后面的代码就退出了
Dim Cnn,strSql   
set Cnn = CreateObject("ADODB.Connection")   
Cnn.ConnectionString="rovider=OraOLEDB.Oracle.1ersist Security Info=False;User ID=ibc_cassword=ecipower;Data Source=orcl"   
Cnn.open

If Cnn.state=0 Then   
    Reporter.ReportEvent micFail,"testing","数据库连接失败"
else
   Reporter.ReportEvent micPass,"testing","数据库连接成功"
End If
if Cnn.State<> 0  then
       Set Rs=CreateObject("ADODB.Recordset")   
        strsql ="select * from blc_gp_head where    GATEPASS_NO='ZN2010120000000208' "
        'set rs=Cnn.execute(sql)
        Rs.Open strsql ,Cnn,1,1
        msgbox(RS.Recordcount)
        ydl=Rs("GATEPASS_NO")   
        msgbox  ydl
        dim a
        a="ZN2010120000000208"  
   for  i=1  to  Rs.Recordcount   
        if  Rs("GATEPASS_NO")=a   then   
           msgbox "a在数据库中存在"   
           exit for                              
        else
           Rs.MoveNext                    
        end  if
   next
end if
RS.close      
Set RS=nothing        
Cnn.Close   
Set Cnn=nothing


rs.open 执行完成后,不再执行后面的代码就退出了,查不出任何原因,求解决!
作者: zhangkun90    时间: 2013-1-22 18:01
首先哈 ,我感觉 你这个 Cnn.State<> 0应该写在上面那个Cnn.State=0 的 else中的  Reporter.ReportEvent 下面啊
作者: zhangkun90    时间: 2013-1-22 18:04
'set rs=Cnn.execute(sql)
        Rs.Open strsql ,Cnn,1,1
你这个  set  rs。。。 是特意注释掉的?
作者: Emao_521125    时间: 2013-1-23 08:42
回复 3# zhangkun90

是特意注释掉的
作者: Emao_521125    时间: 2013-1-23 08:46
1、'set rs=Cnn.execute(sql)是特意注释掉的,在程序中没有什么作用。
2、Cnn.State<> 0应该写在上面那个Cnn.State=0 的 else中的  Reporter.ReportEvent 下面,运行到Rs.Open strsql ,Cnn,1,1时,还是会退出




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2