Asp classic 将连接字符串转换为SQLOLEDB

Asp classic 将连接字符串转换为SQLOLEDB,asp-classic,ado,Asp Classic,Ado,连接代码: set conx = Server.CreateObject("ADODB.connection") conx.Open Application("connectionString") set cmdx = server.CreateObject("ADODB.command") cmdx.ActiveConnection = conx cmdx.CommandText = "dbo.sproc" cmdx.CommandType = &H0004 set rsx = S

连接代码:

set conx = Server.CreateObject("ADODB.connection")
conx.Open Application("connectionString")

set cmdx = server.CreateObject("ADODB.command")
cmdx.ActiveConnection = conx
cmdx.CommandText = "dbo.sproc"
cmdx.CommandType = &H0004

set rsx = Server.CreateObject("ADODB.Recordset")
rsx.open cmdx

resarray = rsx.getrows 
此连接字符串可用于:

connectionString = "DRIVER=SQL Server;UID=User;Address=000.000.000.000;Network=DBMSSOCN;DATABASE=Database;SERVER=server;Password=password;"
这不

connectionString = "Provider=SQLOLEDB;Data Source=000.000.000.000;UID=User;Address=000.000.000.000;Network=DBMSSOCN;DATABASE=Database;SERVER=server;Password=password;"
我得到的错误是:

ADODB.Recordset error '800a0e78'

Operation is not allowed when the object is closed. 

我遗漏了什么?

听起来像是数据库中的权限问题

这里只是一个玩笑,但OLEDB驱动程序处理行计数信息的方式与ODBC不同


我非常怀疑,如果在存储过程的顶部添加SET NOCOUNT,问题就会消失。

这是同一个数据库,只是访问它的方式不同而已。