1

Connection Code:

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 

This connection string works:

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

This doesn't...

connectionString = "Provider=SQLOLEDB;Data Source=000.000.000.000;UID=User;Address=000.000.000.000;Network=DBMSSOCN;DATABASE=Database;SERVER=server;Password=password;"

The error I get is:

ADODB.Recordset error '800a0e78'

Operation is not allowed when the object is closed. 

What am I missing?

2 Answers 2

3

Just a punt here, but the way OLEDB drivers handle Row count informationals differs from ODBC.

I very much suspect that if you add SET NOCOUNT ON at the top of the Stored Procedure the problem will go away.

Sign up to request clarification or add additional context in comments.

Comments

-1

Sounds like a permissions problem in the database!

1 Comment

It's the same database, just a different way of reaching it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.