guojinjin2006 发表于 2008-8-15 10:51:56

QTP连接Oracle数据库的方式

最近刚学习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=test;PWD=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

-------------------------------------------代码--------------------------------------------

zte_boy 发表于 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 编辑 ]

guojinjin2006 发表于 2008-8-15 11:12:10

谢谢

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

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

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

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

我现在的连接数据库的代码是否有更简单的书写方式呢?

zte_boy 发表于 2008-8-15 11:17:27

给你个链接sqlserver的,oracel的链接一样,改下strconn就可以了
Dim rs,conn,sql,strconn

strconn = "Provider=SQLOLEDB.1;User ID=xxx;Password=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

ylm77ojn 发表于 2008-8-17 01:02:18

Set   con = createobject("adodb.connection")
con. open "DRIVER={Oracle in OraHome92};DSN=oracle_localhost;UID=U_YLM;PWD=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=F;PFC=10;TLO=0;"

wonew1228 发表于 2008-8-17 18:26:52

不错

sterson 发表于 2009-3-25 15:58:50

有没有一个完整的,可运行的例子阿..
页: [1]
查看完整版本: QTP连接Oracle数据库的方式