[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 215
  • Last Modified:

What error is this??

Hello,
 I am trying to make a small application.I have the main screen on which a form is displayed with a drop down box and a radio button.
 Once the user select the number from the drop down and clicks the radio button and submit, the  following script is to be executed.
 Now this refers to an access query where i am to pass two parameters.However when i execute the script with the following code:

<html>
<head>
 <title> Auction Details</title>
</head>

<body>
<%

 dim conn,rs,comm
 set comm=server.createobject("adodb.command")
 set conn=server.createobject("adodb.connection")
 set rs=server.createobject("adodb.recordset")

 conn.open "DSN=mydbase"

 comm.activeconnection=conn
 comm.commandtext="details"
 comm.commandtype=2

 comm.Parameters.Append comm.createparameter ("abc",adInteger,adparameterinput)

comm.parameters.append comm.createparameter("xyz",advarchar,adparameterinput)
comm.parameters(0).value=request.querystring("number")
comm.parameters(1).value=request.querystring("radio")
set rs=comm.execute

(PS this is just part of the script and i strongly feel that the error is coming from here.)

When i execute the script i get the following error:

ADODB.Command error '800a0bb9'

Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

/man/list.asp, line 26

Please help me resolve this problem
The datatypes in the database are
integer and text


0
smash81
Asked:
smash81
  • 6
  • 6
  • 3
  • +1
1 Solution
 
Michel SakrCommented:
1at.. if it's an access database you shouldn't pass parameters, besides what are you trying to do here?

do it this way

StrSQL = "INSERT INTO [Table name] (Fielad1,Field2) values(" & request.querystring("number")
 & ",'" & request.querystring("radio")
 & '")

conn.execute(StrSQL)

or StrSQL = "Select * From [TABLENAme] where [Numeric Field/ Numeric Column Name]=" & request.querystring("number") & " AND [Text Field/ Text Column Name]='" & request.querystring("radio") & "'"
Set rs = conn.Execute(StrSQL)



0
 
dragoshCommented:
if you are trying to execute a stored procedure you must set CommandType to adCmdStoredProc(=4)

and i think the names of your procedure's parameters are wrong : "abc" , "xyz" .. should be "@abc" and "@xyz"

and one more thing , method CreateParameter has 5 parameters :

command.CreateParameter (Name, Type, Direction, Size, Value)

0
 
Michel SakrCommented:
Access doesn't support stored procedures..

0
Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

 
dragoshCommented:
i know .. who is talking about Access ???
0
 
Michel SakrCommented:
>Now this refers to an access query where i am to pass two parameters
0
 
dragoshCommented:
oh ... my mistake , next time i must read with more attention :)
0
 
nigelroweCommented:
>Now this refers to an access query...

But does it mean MS Access, or, access in general?
0
 
smash81Author Commented:
Yes it is an acess database.Does acess have some problems when you pass parameters?
0
 
Michel SakrCommented:
to what you're passing parameters? a macro?
0
 
smash81Author Commented:
Yes it is an acess database.Does acess have some problems when you pass parameters?
0
 
smash81Author Commented:
Its a query.
0
 
smash81Author Commented:
Its a query.
0
 
smash81Author Commented:
Its a query.
0
 
Michel SakrCommented:
a view.. you want to fetch records from the query then do as I typed..

your way is to pass parameters to an SQL stored procedure!

what's the query name? details

then

StrSQL = "Select * From details where abc =" & request.querystring("number")
& " AND xyz='" & request.querystring("radio") & "'"
Set rs = conn.Execute(StrSQL)

I supposed abc is the numeric field in the query and xyz the text field
0
 
smash81Author Commented:
Now i have tried using the command.parameters.refresh command and i am getting the following error


Microsoft OLE DB Provider for ODBC Drivers error '80040e51'

Provider cannot derive parameter information and SetParameterInfo has not been called


Now what is this????
0
 
Michel SakrCommented:
:o/
0

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

  • 6
  • 6
  • 3
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now