>Ciao a tutti,
>sto impazzendo a capire il comportamento di una pagina asp e,
>spero, mi possiate aiutare.
>Dunque ho fatto una procedura in sql server express 2005 (stupida,
>lo so, ma non sapevo che altre prove fare) così fatta
>
>CREATE PROCEDURE [dbo].[estraiCountTicketData]
> -- Add the parameters for the stored procedure here
> @p1 varchar(50),
> @p2 varchar(50)
>AS
>BEGIN
> -- SET NOCOUNT ON added to prevent extra result sets from
> -- interfering with SELECT statements.
> SET NOCOUNT ON;
>
>select count(*) as quantiT from tblTicket WHERE dataApertura
>between @p1 + ' 00:00:00' and @p2 + ' 23:00:00' --'11/02/2007
>00:00:00' and '11/02/2007 23:00:00'
>END
>
>se la richiamo da una query qualsiasi tipo questa:
>
>exec estraiCountTicketData '11/02/2007','11/02/2007'
>
>mi restituisce 9 (risultato sperato).
>
>Ora, io da una pagina asp faccio così:
>
>strSQL= "exec estraiCountTicketData '" & session("qualeValoreRicerca")
>&"','" & session("qualeValoreRicerca") &"'"
>
>dove session("qualeValoreRicerca") vale 11/02/2007
>(tanto per fare una prova con la stessa data)
>ed il risultato è un errore!!!! Questo:
>
>Microsoft OLE DB Provider for SQL Server (0x80040E14)
>Incorrect syntax near '/'.
>/divtlc/corpoTicket.asp, line 209
>
>ma com'è possibile che in sql server funzioni e in asp mi dica
>che c'è un errore di sintassi???
>
>Grazie mille
Prova a fare così:
strSQL = "estraiCountTicketData"
Set cmd = New ADODB.Command
cmd.Parameters.Append cmd.CreateParameter("@p1", adVarChar, adParamInput, 25)
cmd.Parameters("@p1").Value = session("qualeValoreRicerca")
cmd.Parameters.Append cmd.CreateParameter("@p2", adVarChar, adParamInput, 25)
cmd.Parameters("@p2").Value = session("qualeValoreRicerca")
Andrea
http://www.MelisWeb.eu/