Michael Nielsen skrev:
> Jeg prøver at få disse to betingelser til at virke samtidig.
Hvilke to betingelser?
> De virker hver for sig og jeg har prøvet med AND, men jeg får
> denne fejl alligevel:
> [Microsoft][ODBC Microsoft Access Driver] Syntax error (missing
> operator) in query expression 'serienr='.
Vi tager den lige endnu en gang (hvis du har læst tidligere indlæg
i gruppen er der en pæn chance for at du har set følgende før):
Når der er fejl i en sql-sætning er det første man gør at udskrive
den færdige sætning. *Hver* gang. Hver *eneste* gang.
Se <
http://asp-faq.dk/article/?id=41>.
> Line 23 refererer til
>
> Set rs = Conn.execute ("SELECT * FROM salg_total WHERE serienr="
> & serienr & "")
Umiddelbart ser det fint ud - men hverken du eller jeg ved hvad der
gemmer sig i variablen serienr når linjen skal køres.
Gem sql-sætningen i en variabel og udskriv den før du kører den:
Dim strSQL
strSQL = "SELECT * FROM salg_total WHERE serienr=" & serienr
Response.write "SQL: " & strSQL
Response.END
Conn.Execute( strSQL )
> Skal jeg bruge en anden operator end AND? Her er de to
> betingelser:
Fejlen opstår slet ikke ved de to betingelser. Brug fejlmeddelelsen
fra asp-parseren - den fortæller at der er fejl i linje 23. Så er
det linje 23 du skal undersøge, ikke en tilfældig anden linje.
> If serienr = "" Then
> Response.Write("<p><font color=red>Indtast venligst et
> serienr.!</font></p>")
> fejl = true
> End If
Det tjek her er en validering af om serienummeret er indtastet. Den
skal stå før din sql-sætning - og så skal du sørge for at sql-
sætningen kun udføres hvis serienr *er* udfyldt. Det vil også være
en god ide at tjekke om serienr er numerisk:
If serienr = "" OR (Not isnumeric(serienr)) Then
' Udskriv fejlmeddelelse
Else
' Fortsæt med sql-kald
End If
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på
http://usenet.dk/netikette/citatteknik.html