51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3101|回复: 4
打印 上一主题 下一主题

[求助] QTP连接SQL SERVER执行查询语句的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-9-30 15:22:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
背景:我在数据库中新建了一个QTPtest的数据库,在其上新建了一个test1的表,表里面为2行5列的数据,列名依次为aaa,bbb,ccc,ddd,eee,第一行分别存储1,2,3,4,5,第二行分别对应存储6,7,8,9,10,现在我想是通过执行select aaa from test1 where bbb='2'的语句,获取aaa列对应的数据1,并赋给变量A。但是每次执行到rs.open sql,con的时候就会提示对象test1找不到,请教高人赐教这是为啥,代码该如何修改。

'定义变量
Dim con  
Dim conset
Dim rs
Dim sql
Dim names
Dim i

'建立连接
Set con=createobject("adodb.connection")
conset="rovider=SQLOLEDB.1ersist Security Info=False;User ID=saWD=1111;Data Source=10.206.20.8;InitialCatalog=test1"

con.open conset

'查看连接是否已建立
If  con.state=0 Then
msgbox"failed"
else
msgbox"pass"
End If

'建立空的记录集
Set rs=createobject("adodb.recordset")

'设置SQL语句
sql="select * from test1 where bbb='2'"

'打开记录集
rs.open sql,con

rs.Open
rs.MoveFirst

'循环取数,数据表列名为aaa/bbb/ccc/ddd/eee
        Dim A
    A = rs("aaa").value

    rs.movenext

'关闭连接
con.close
'释放Connection对象
Set con=nothing

[ 本帖最后由 ChanJian910 于 2009-9-30 15:24 编辑 ]

本帖子中包含更多资源

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

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

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2009-10-9 10:39:55 | 只看该作者
米人回答啊?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2009-10-9 16:04:05 | 只看该作者
InitialCatalog=test1
test1这个库没找到
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2009-10-9 16:14:29 | 只看该作者
原帖由 hsjzfling 于 2009-10-9 16:04 发表
InitialCatalog=test1
test1这个库没找到

执行rs.movefist的时候提示“对象关闭时,不能执行操作”又如何解决呢?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2009-10-9 16:28:58 | 只看该作者
问题已经解决,数据源的配置有问题,贴上可执行代码
'定义变量
Dim con  
Dim conset
Dim rs
Dim sql
Dim names
Dim i

'建立连接
Set con=createobject("adodb.connection")
conset="SQLOLEDB.1ersist Security Info=False;User ID=saWD=1111;Data Source=datasource_gzmmis"

'/打开数据源链接
con.open conset

'查看连接是否已建立
If  con.State=0  Then
        msgbox"failed"
else
        msgbox"pass"
End If

'建立空的记录集
Set rs=createobject("adodb.recordset")

'设置SQL语句
sql="use QTPtest select bbb from test1 where aaa='chenjian2'"

''打开记录集
rs.open sql,con,1,2
'rs.open"use QTPtest select bbb from test1 where aaa='1'",con,1,2

rs.Movefirst
msgbox rs("bbb").value


'关闭连接
con.close

'释放Connection对象
Set con=nothing
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-21 21:43 , Processed in 0.078744 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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