i-orMedlem sedan nov. 2001294 inlägg Jag undrar om man behöver ersätta " i alla fält. Enda gången jag har fått problem är om ett fält med " ska ingå i ett WHERE-uttryck.
Kan jag då bara ersätta " i de fält, som ingår i WHERE-uttryck?
Blir det problem på något annat sätt? I så fall, hur?
Finns det andra tecken man ska vara försiktig med?
LarsGMedlem sedan dec. 200012 464 inlägg " skall du inte göra något åt. Det är bara ' som behöver ersättas
t = "'" & replace(request.form("template"),"'","''") & "'"
q = "insert into x values(t)"
Använd alltid ' för att avgränsa strängar i SQL.
Om man använder Access databas så skall man också ta hand om |
t = "'" & replace(request.form("template"),"'","''") & "'"
t = replace(t,"|","' & chr(124) & '")
i-orMedlem sedan nov. 2001294 inlägg Behöver man alltså inte ersätta ' annat än i de strängar som ingår i WHERE-uttryck?
När använder man |?
Ok, man ska vara förberedd på allt, men | används väl bara av de som vill förstöra?
LarsGMedlem sedan dec. 200012 464 inlägg Det har ingen betydelse var du använder värdet. Du måste göra det med alla strängar som du stoppar in i en sql-sats. I mitt exempel så är det ju ett insert-statement.
Att byta | är en säkerhetsåtgärd. Jag har i ett tidigare inlägg länkat till en artikel som beskriver varför. (du kan ju söka om du är intresserad.)
i-orMedlem sedan nov. 2001294 inlägg Jag använder nog bara strängar i WHERE-uttryck (uppdateringar, raderingar osv gör jag efter jag öppnat recordsetet). Så om det bara är i SQL-satser så är det nog lugnt för min del.
Tack för infon och jag ska söka efter |