Why am I getting "Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another."

I am using classic ASP to access records on an Oracle database.

The connection string I am using works with other tables on the database with no issues.

If I comment out the RS4 portion of this code the page runs fine and displays the other values...just not the tech values.

The database guy I am working with says he gets records returned while using Microsoft Query. I've even changed the query to a basic form of "select this from that" and still the same error.

When I run this part of the code (attached) I get:

ADODB.Recordset (0x800A0BB9)
Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.
/web/report.asp, line 378

with line 378 being:

RS4.OPEN sqlTechQry, oConnMTV, 3,3

I'm not sure if there is an issue with the database connection string or something else. The attached code has the oracle connection string I am using and the code.

Any help would be appreciated. Document1.txt
Donnie WalkerAsked:
Who is Participating?
Big MontySenior Web Developer / CEO of ExchangeTree.org Commented:
this usually indictaes something wrong with the query. can you test out a simple select statement using the syntax I provided, just so we can debug it further?
Can you print the query in HTML page before RS4.OPEN


RS4.OPEN sqlTechQry, oConnMTV,3,3
Donnie WalkerAuthor Commented:
I get this error:

Microsoft VBScript runtime (0x800A01B6)
Object doesn't support this property or method: 'debug.print'

But I have printed out the query and confirmed it does work with Microsoft Query.
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

May be you need to debug little more

Here are the steps to debug


Big MontySenior Web Developer / CEO of ExchangeTree.org Commented:
i would change your rs4.open statement to:

set RS4 = oConnMTV.Execute( sqlTechQry )

since you're not updating the recordset, it's better (performance-wise) to do it this way.
Donnie WalkerAuthor Commented:
When I do that I get this error:

Microsoft OLE DB Provider for Oracle (0x80040E0C)
Command text was not set for the command object.
Donnie WalkerAuthor Commented:
Thanks! Your suggestion led me to examine my code and I discovered I was calling a function inside a larger function and that was causing the error.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.