Vbscript 如何在QTP中对Oracle运行SELECT查询?

Vbscript 如何在QTP中对Oracle运行SELECT查询?,vbscript,qtp,Vbscript,Qtp,我有一个难题,在Benthic Golden32或其他数据库连接软件中运行良好的查询在QTP中不返回任何值。作为我正在运行的代码的一个示例: set conn=CreateObject("ADODB.Connection") conn.ConnectionString ="Driver={Microsoft ODBC for Oracle};Server=SERVER;uid=USER;pwd=123456;" Set objRecSet = CreateObject("ADODB.Reco

我有一个难题,在Benthic Golden32或其他数据库连接软件中运行良好的查询在QTP中不返回任何值。作为我正在运行的代码的一个示例:

set conn=CreateObject("ADODB.Connection") 
conn.ConnectionString ="Driver={Microsoft ODBC for Oracle};Server=SERVER;uid=USER;pwd=123456;" 
Set objRecSet = CreateObject("ADODB.Recordset")
conn.open
SQL= "SELECT * FROM table"
objRecSet.Open SQL, conn

msgbox(objRecSet.RecordCount)
这返回-1。为什么?我在Benthic和QTP中使用相同的用户帐户,并在这两种情况下运行相同的查询。在QTP中对同一帐户和表插入查询可以正常工作


提前谢谢你的帮助

根据提供程序/驱动程序、光标类型和月亮的相位,.RecordCount无法在循环结果集之前提供记录数。开始你的研究;检查ADO文档中两个打开方法的附加参数;考虑切换到选择计数类型的查询,以查看您得到了多少行。

sqlStatement = "select count(*) from emp"
Rec.Open sqlStatement,conn
Value = Rec.fields.item(0)
     msgbox Value

这将直接打印ur表中的记录计数。希望这有帮助。

有帮助,但令人讨厌。RecordCount没有按预期工作。