Trying to use the command object with Parameters
Stored procedure should insert a record and return rowsaffected
This work fine from Query Analizer,
But I keep getting this error in asp
the first parameter is my return value, all other values are varchar,
except 1 datetime and 1 text, I have removed both of these from the stored
proc and code to see if they were the problem, no luck.
Can you help me?
Error Type:
Microsoft OLE DB Provider for SQL Server (0x80040E10)
No value given for one or more required parameters.
'**********************************************
' stored procedure
CREATE PROCEDURE [news_insert]
@Headline VARCHAR(260),
@Source VARCHAR(120),
@SourceUrl VARCHAR(200),
@Author VARCHAR(120),
@PublishDate DATETIME,
@Brief VARCHAR(2000),
@Body TEXT
AS
DECLARE @SetError INT
DECLARE @NumRecs INT
INSERT INTO News (Headline, Source, SourceUrl, Author,
PublishDate, Category, Brief, Body)
VALUES (@Headline, @Source, @SourceUrl, @Author, @PublishDate, 0,
@Brief, @Body)
SET @NumRecs = @@rowcount
EXEC @SetError = news_set_current
IF @@error <> 0 OR @SetError <> 0
RETURN 666999666
ELSE
RETURN @NumRecs
'***********************************************
'**********************************************
' ASP Code
set oConn = server.CreateObject ("ADODB.connection")
set oCmd = server.CreateObject ("ADODB.command")
set oP = server.CreateObject ("ADODB.parameter")
Response.Write "TESTING NEWS::INSERT<BR>"
sql = "{? = call dbo.news_insert(?, ?, ?, ?, ?, ?, ?)}"
oCmd.ActiveConnection = oConn
oCmd.CommandText = sql
oCmd.CommandType = adCmdStoredProc
set oP = oCmd.CreateParameter("ReturnValue", adInteger,
adParamReturnValue, , 0)
oCmd.Parameters.Append oP
set oP = oCmd.CreateParameter("Headline", adVarChar, adParamInput,
255, "Insert Headline")
oCmd.Parameters.Append oP
set oP = oCmd.CreateParameter("Source", adVarChar, adParamInput,
255, "insert source")
oCmd.Parameters.Append oP
set oP = oCmd.CreateParameter("SourceLink", adVarChar, adParamInput,
255, "insert Source link")
oCmd.Parameters.Append oP
set oP = oCmd.CreateParameter("Author", adVarChar, adParamInput,
255, "insert author")
oCmd.Parameters.Append oP
set oP = oCmd.CreateParameter("PublishDate", adDBDate, adParamInput,
8, "12/12/2001")
oCmd.Parameters.Append oP
set oP = oCmd.CreateParameter("Brief", adVarChar, adParamInput,
255, "brief")
oCmd.Parameters.Append oP
set oP = oCmd.CreateParameter("Body", adVarChar, adParamInput, 255, "body")
oCmd.Parameters.Append oP
oCmd.Execute
' was it inserted ?
If oCmd.Parameters.Item("ReturnValue").Value Then
Response.Write "INSERTED<BR>"
Else
Response.Write "NOT INSERTED<BR>"
End If
'*******************************************************************