Hello All,
I have been chasing this one for a few hours and finally figured I would ask the collective.
I have written a stored procedure on SQL2000 and am trying to execute it and pass it parameters. I have done this before and I know how to do it. Here is the problem...I had a procedure that worked and the ASP passed it Just fine. I have now expanded the procedure and need to pass more parameters (about 6 or 7 more) but when I run the page I get the error:
Procedure 'testproc' expects parameter '@FirstName'
IS there A limit to the Number of Parameters that can be passed? Is there a Buffer size that I am Maxing out?
this works: (notice remmed @sex variable)
ALTER Proc TestProc
@FirstName varchar(20),
@MiddleInitial varchar(1),
@LastName varchar(20),
@Email varchar(50),
@Address varchar(50),
@City varchar(20),
@State varchar(2),
@zip varchar(10),
@Phone varchar(13),
@SocialSecurity varchar(11),
/*@sex bit,*/
@ReturnValue varchar(500)= null OUTPUT
as
set @ReturnValue=/*@FirstName+*/@MiddleInitial+@LastName+@Email+
@Address+@City+@State+@zip+@phone+@SocialSecurity/*+Cast@Sex as varchar)*/
With this ASP: (again remmed out paramSex)
<%set cn=server.createobject("adodb.connection"
set cmd=server.createobject("adodb.command"
set ParamReturnValue= cmd.CreateParameter("ReturnValue",adVarChar,adParamOutput,500)
set ParamFirstName=cmd.createparameter("FirstName",adVarChar,adParamInput,10)
set ParamMiddleInitial=cmd.createparameter("MiddleInitial",adVarChar,adParamInput,1)
set ParamLastName=cmd.createparameter("LastName",adVarChar,adParamInput,10)
set ParamEmail=cmd.createparameter("Email",adVarChar,adParamInput,20)
set ParamAddress=cmd.createparameter("Address",adVarChar,adParamInput,20)
set ParamCity=cmd.createparameter("City",adVarChar,adParamInput,15)
set ParamState=cmd.createparameter("State",adVarChar,adParamInput,2)
set ParamZip=cmd.createparameter("Zip",adVarChar,adParamInput,10)
set ParamPhone=cmd.createparameter("Phone",adVarChar,adParamInput,13)
set ParamSocialSecurity=cmd.createparameter("SocialSecurity",adVarChar,adParamInput,11)
'set ParamSex=cmd.createparameter("Sex",adBoolean,adParamInput)
cn.Open application("applicanttracking_Connectionstring"
set cmd.ActiveConnection=cn
cmd.CommandText="testProc"
cmd.Parameters.Append ParamFirstName
cmd.Parameters.Append ParamMiddleInitial
cmd.Parameters.Append ParamLastName
cmd.Parameters.Append ParamEmail
cmd.Parameters.Append ParamAddress
cmd.Parameters.Append ParamCity
cmd.Parameters.Append ParamState
cmd.Parameters.Append ParamZip
cmd.Parameters.Append ParamPhone
cmd.Parameters.Append ParamSocialSecurity
'cmd.Parameters.Append ParamSex
cmd.Parameters.Append ParamReturnValue
ParamFirstName.value="aaa"
ParamMiddleInitial.value="b"
ParamLastName.value="ccccc"
ParamEmail.value="dddddddd"
ParamAddress.value="eeeeeeeeee"
ParamCity.value="fff"
ParamState.value="gg"
ParamZip.value="hhhh"
ParamPhone.value="iii"
ParamSocialSecurity.value="jjj"
'ParamSex.value=0
Cmd.execute
response.write cmd.parameters("returnValue"
.Value
%>
So all is well above.
This Also works: (note remmed out @FirstName)
ALTER Proc TestProc
/*@FirstName varchar(20),*/
@MiddleInitial varchar(1),
@LastName varchar(20),
@Email varchar(50),
@Address varchar(50),
@City varchar(20),
@State varchar(2),
@zip varchar(10),
@Phone varchar(13),
@SocialSecurity varchar(11),
@sex bit,
@ReturnValue varchar(500)= null OUTPUT
as
set @ReturnValue=/*@FirstName+*/@MiddleInitial+@LastName+@Email+
@Address+@City+@State+@zip+@phone+@SocialSecurity+
Cast(@Sex as varchar)
With this ASP
again ParamFirstName is remmed out)
<%set cn=server.createobject("adodb.connection"
set cmd=server.createobject("adodb.command"
set ParamReturnValue= cmd.CreateParameter("ReturnValue",adVarChar,adParamOutput,500)
'set ParamFirstName=cmd.createparameter("FirstName",adVarChar,adParamInput,10)
set ParamMiddleInitial=cmd.createparameter("MiddleInitial",adVarChar,adParamInput,1)
set ParamLastName=cmd.createparameter("LastName",adVarChar,adParamInput,10)
set ParamEmail=cmd.createparameter("Email",adVarChar,adParamInput,20)
set ParamAddress=cmd.createparameter("Address",adVarChar,adParamInput,20)
set ParamCity=cmd.createparameter("City",adVarChar,adParamInput,15)
set ParamState=cmd.createparameter("State",adVarChar,adParamInput,2)
set ParamZip=cmd.createparameter("Zip",adVarChar,adParamInput,10)
set ParamPhone=cmd.createparameter("Phone",adVarChar,adParamInput,13)
set ParamSocialSecurity=cmd.createparameter("SocialSecurity",adVarChar,adParamInput,11)
set ParamSex=cmd.createparameter("Sex",adBoolean,adParamInput)
cn.Open application("applicanttracking_Connectionstring"
set cmd.ActiveConnection=cn
cmd.CommandText="testProc"
'cmd.Parameters.Append ParamFirstName
cmd.Parameters.Append ParamMiddleInitial
cmd.Parameters.Append ParamLastName
cmd.Parameters.Append ParamEmail
cmd.Parameters.Append ParamAddress
cmd.Parameters.Append ParamCity
cmd.Parameters.Append ParamState
cmd.Parameters.Append ParamZip
cmd.Parameters.Append ParamPhone
cmd.Parameters.Append ParamSocialSecurity
cmd.Parameters.Append ParamSex
cmd.Parameters.Append ParamReturnValue
'ParamFirstName.value="aaa"
ParamMiddleInitial.value="b"
ParamLastName.value="ccccc"
ParamEmail.value="dddddddd"
ParamAddress.value="eeeeeeeeee"
ParamCity.value="fff"
ParamState.value="gg"
ParamZip.value="hhhh"
ParamPhone.value="iii"
ParamSocialSecurity.value="jjj"
ParamSex.value=0
Cmd.execute
response.write cmd.parameters("returnValue"
.Value%>
Again all is well which implies that ParamFirstname works and ParamSex Work--When they are seperate.
If I turn them both on I get the error listed above. I assume it is a buffer that is full but have not ever used those....any help would be appreciated. sorry for the long post but I wanted to avoid people saying the Spelling was off.
thanks,
Bassguy
I have been chasing this one for a few hours and finally figured I would ask the collective.
I have written a stored procedure on SQL2000 and am trying to execute it and pass it parameters. I have done this before and I know how to do it. Here is the problem...I had a procedure that worked and the ASP passed it Just fine. I have now expanded the procedure and need to pass more parameters (about 6 or 7 more) but when I run the page I get the error:
Procedure 'testproc' expects parameter '@FirstName'
IS there A limit to the Number of Parameters that can be passed? Is there a Buffer size that I am Maxing out?
this works: (notice remmed @sex variable)
ALTER Proc TestProc
@FirstName varchar(20),
@MiddleInitial varchar(1),
@LastName varchar(20),
@Email varchar(50),
@Address varchar(50),
@City varchar(20),
@State varchar(2),
@zip varchar(10),
@Phone varchar(13),
@SocialSecurity varchar(11),
/*@sex bit,*/
@ReturnValue varchar(500)= null OUTPUT
as
set @ReturnValue=/*@FirstName+*/@MiddleInitial+@LastName+@Email+
@Address+@City+@State+@zip+@phone+@SocialSecurity/*+Cast@Sex as varchar)*/
With this ASP: (again remmed out paramSex)
<%set cn=server.createobject("adodb.connection"
set cmd=server.createobject("adodb.command"
set ParamReturnValue= cmd.CreateParameter("ReturnValue",adVarChar,adParamOutput,500)
set ParamFirstName=cmd.createparameter("FirstName",adVarChar,adParamInput,10)
set ParamMiddleInitial=cmd.createparameter("MiddleInitial",adVarChar,adParamInput,1)
set ParamLastName=cmd.createparameter("LastName",adVarChar,adParamInput,10)
set ParamEmail=cmd.createparameter("Email",adVarChar,adParamInput,20)
set ParamAddress=cmd.createparameter("Address",adVarChar,adParamInput,20)
set ParamCity=cmd.createparameter("City",adVarChar,adParamInput,15)
set ParamState=cmd.createparameter("State",adVarChar,adParamInput,2)
set ParamZip=cmd.createparameter("Zip",adVarChar,adParamInput,10)
set ParamPhone=cmd.createparameter("Phone",adVarChar,adParamInput,13)
set ParamSocialSecurity=cmd.createparameter("SocialSecurity",adVarChar,adParamInput,11)
'set ParamSex=cmd.createparameter("Sex",adBoolean,adParamInput)
cn.Open application("applicanttracking_Connectionstring"
set cmd.ActiveConnection=cn
cmd.CommandText="testProc"
cmd.Parameters.Append ParamFirstName
cmd.Parameters.Append ParamMiddleInitial
cmd.Parameters.Append ParamLastName
cmd.Parameters.Append ParamEmail
cmd.Parameters.Append ParamAddress
cmd.Parameters.Append ParamCity
cmd.Parameters.Append ParamState
cmd.Parameters.Append ParamZip
cmd.Parameters.Append ParamPhone
cmd.Parameters.Append ParamSocialSecurity
'cmd.Parameters.Append ParamSex
cmd.Parameters.Append ParamReturnValue
ParamFirstName.value="aaa"
ParamMiddleInitial.value="b"
ParamLastName.value="ccccc"
ParamEmail.value="dddddddd"
ParamAddress.value="eeeeeeeeee"
ParamCity.value="fff"
ParamState.value="gg"
ParamZip.value="hhhh"
ParamPhone.value="iii"
ParamSocialSecurity.value="jjj"
'ParamSex.value=0
Cmd.execute
response.write cmd.parameters("returnValue"
%>
So all is well above.
This Also works: (note remmed out @FirstName)
ALTER Proc TestProc
/*@FirstName varchar(20),*/
@MiddleInitial varchar(1),
@LastName varchar(20),
@Email varchar(50),
@Address varchar(50),
@City varchar(20),
@State varchar(2),
@zip varchar(10),
@Phone varchar(13),
@SocialSecurity varchar(11),
@sex bit,
@ReturnValue varchar(500)= null OUTPUT
as
set @ReturnValue=/*@FirstName+*/@MiddleInitial+@LastName+@Email+
@Address+@City+@State+@zip+@phone+@SocialSecurity+
Cast(@Sex as varchar)
With this ASP
<%set cn=server.createobject("adodb.connection"
set cmd=server.createobject("adodb.command"
set ParamReturnValue= cmd.CreateParameter("ReturnValue",adVarChar,adParamOutput,500)
'set ParamFirstName=cmd.createparameter("FirstName",adVarChar,adParamInput,10)
set ParamMiddleInitial=cmd.createparameter("MiddleInitial",adVarChar,adParamInput,1)
set ParamLastName=cmd.createparameter("LastName",adVarChar,adParamInput,10)
set ParamEmail=cmd.createparameter("Email",adVarChar,adParamInput,20)
set ParamAddress=cmd.createparameter("Address",adVarChar,adParamInput,20)
set ParamCity=cmd.createparameter("City",adVarChar,adParamInput,15)
set ParamState=cmd.createparameter("State",adVarChar,adParamInput,2)
set ParamZip=cmd.createparameter("Zip",adVarChar,adParamInput,10)
set ParamPhone=cmd.createparameter("Phone",adVarChar,adParamInput,13)
set ParamSocialSecurity=cmd.createparameter("SocialSecurity",adVarChar,adParamInput,11)
set ParamSex=cmd.createparameter("Sex",adBoolean,adParamInput)
cn.Open application("applicanttracking_Connectionstring"
set cmd.ActiveConnection=cn
cmd.CommandText="testProc"
'cmd.Parameters.Append ParamFirstName
cmd.Parameters.Append ParamMiddleInitial
cmd.Parameters.Append ParamLastName
cmd.Parameters.Append ParamEmail
cmd.Parameters.Append ParamAddress
cmd.Parameters.Append ParamCity
cmd.Parameters.Append ParamState
cmd.Parameters.Append ParamZip
cmd.Parameters.Append ParamPhone
cmd.Parameters.Append ParamSocialSecurity
cmd.Parameters.Append ParamSex
cmd.Parameters.Append ParamReturnValue
'ParamFirstName.value="aaa"
ParamMiddleInitial.value="b"
ParamLastName.value="ccccc"
ParamEmail.value="dddddddd"
ParamAddress.value="eeeeeeeeee"
ParamCity.value="fff"
ParamState.value="gg"
ParamZip.value="hhhh"
ParamPhone.value="iii"
ParamSocialSecurity.value="jjj"
ParamSex.value=0
Cmd.execute
response.write cmd.parameters("returnValue"
Again all is well which implies that ParamFirstname works and ParamSex Work--When they are seperate.
If I turn them both on I get the error listed above. I assume it is a buffer that is full but have not ever used those....any help would be appreciated. sorry for the long post but I wanted to avoid people saying the Spelling was off.
thanks,
Bassguy