51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3953|回复: 6
打印 上一主题 下一主题

[原创] QTP连接Oracle数据库的方式

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-8-15 10:51:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近刚学习QTP,所以碰到好多问题,还请大家帮忙解决一下。
QTP连接ORACLE数据库我现在知道的有两种方式,一:ODBC连接 二:ADO方式连接;大家能不能提供一下这两种方式连接ORACLE的代码,虽然我从网上看到好多这样类似的代码,打都运行不过,是否可以发一些正确的代码,谢谢。在线等呀

例:ODBC方式连接ORACLE
-------------------------------------------代码--------------------------------------------
Public Sub DBConnect()
Dim objConnection
Dim objRecordSet
Dim objCommand
Dim objConnectionString
Set objConnection=CreateObject("ADODB.CONNECTION")
Set objConnectionString="DRIVER={Microsoft ODBC for Oracle};UID=testWD=test;SERVER=orcl;"  //运行时一直提示这句错误
objConnection.Open objConnectionString
End Sub

Public Sub ExecuteSql(strSql)
Set objRecordSet = CreateObject("ADODB.RECORDSET")               
Set objCommand = CreateObject("ADODB.COMMAND")              
objCommand.ActiveConnection = objConnection
objCommand.CommandText = strSql
objRecordSet.CursorLocation = 1     //这句话是什么意思
objRecordSet.Open objCommand   
End Sub

Public Sub DBClose()
objRecordSet.Close
objConnection.Close
Set objCommand=Nothing
Set objRecordSet=Nothing
Set objConnection=Nothing
End Sub

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

使用道具 举报

该用户从未签到

2#
发表于 2008-8-15 10:54:35 | 只看该作者
Set objConnectionString="DRIVER={Microsoft ODBC for Oracle};UID=testWD=test;SERVER=orcl;"  //运行时一直提示这句错误
这是个链接串,不是给对象赋值,不用set

objRecordSet.CursorLocation = 1     //这句话是什么意思
这个是游标服务的位置

[ 本帖最后由 zte_boy 于 2008-8-15 10:56 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2008-8-15 11:12:10 | 只看该作者

谢谢

我现在已经修改过来了,可是现在又提示新的问题
The test run cannot continue due to an unrecoverable error.

参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。

提示Line (24): "objCommand.ActiveConnection = objConnection".

我们定义的变量有全局变量和局部变量之分吗 ?

我现在的连接数据库的代码是否有更简单的书写方式呢?
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-8-15 11:17:27 | 只看该作者
给你个链接sqlserver的,oracel的链接一样,改下strconn就可以了
Dim rs,conn,sql,strconn

  strconn = "rovider=SQLOLEDB.1;User ID=xxxassword=xx;"&_
  "Data source=xxx;DATABASE=xxx"

  Set conn = createobject("adodb.connection")
  conn.open strconn

  sql="select * from td.SESSIONS_HISTORY where USER_NAME = '"_
     &LOGINUSER&"'"

  Set rs=createobject("adodb.recordset")
  rs.open sql,conn,1,1

  Set rs=Nothing
  Set conn = Nothing
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2008-8-17 01:02:18 | 只看该作者
Set   con = createobject("adodb.connection")
con. open "DRIVER={Oracle in OraHome92};DSN=oracle_localhost;UID=U_YLMWD=U_YLM;DBQ=LEONYAO ;DBA=W;APA=T;EXC=F;FEN=T;QTO=T;FRC=10;FDL=10;LOB=T;RST=T;GDE=F;FRL=F;BAM=IfAllSuccessful;MTS=F;MDI=F;CSR=F;FWC=FFC=10;TLO=0;"
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2008-8-17 18:26:52 | 只看该作者
不错
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2018-4-22 12:50
  • 签到天数: 393 天

    连续签到: 1 天

    [LV.9]测试副司令

    7#
    发表于 2009-3-25 15:58:50 | 只看该作者
    有没有一个完整的,可运行的例子阿..
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-27 18:25 , Processed in 0.071613 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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