---
title: "error in your SQL syntax"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/57151-error-in-your-sql-syntax"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "G8"
published: "2002-10-26T11:26:43.000Z"
updated: "2002-10-26T18:09:05.000Z"
replies: 9
views: 345
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/57151-error-in-your-sql-syntax"
---

# error in your SQL syntax

## #1 — G8, 2002-10-26T11:26Z

Hej

Om jag skriver in \\ ' (backslash och en fnutt utan mellanrum)i en textbox i ett formulär så får jag felmeddelande som antyder att jag har fel i SQLsträngen 

> Microsoft OLE DB Provider for ODBC Drivers fel '80040e09' 
> 
> \[TCX\]\[MyODBC\]You have an error in your SQL syntax near 'age = '23', uppk' at line 1

Detta sker även om jag escape:ar '

Vad är det som orskarar detta och hur ska jag gå runt det? Jag antar att det är backslash som orsakar detta och ska jag då bara sätta en replace \\ med \\\\ eller vad?

Kör MySQL databas...

Tack

//G8

Permalänk: https://www.webforum.nu/p/57151

## #2 — Ekström, 2002-10-26T11:58Z

Du använder inte \\ för att escapea tecken i ASP vad jag vet.

Exempel på escapeing:
" escapear du med ""
' escapear du med ''
osv.

Visa gärna SQL-satsen så man kan hjälpa dig.

Permalänk: https://www.webforum.nu/p/835379

## #3 — G8, 2002-10-26T12:36Z

Jo jo, men jag kanske var lite otydlig...

Jag escape:ar ' redan och det funkar superbra... men skriver jag \\ så får jag felmeddelandet som jag skrev innan... 

Alltså måste väl även \\ escape:as...eller?

Som sagts innan, MySQL...

//G8

Permalänk: https://www.webforum.nu/p/835393

## #4 — LarsG, 2002-10-26T14:14Z

Hur ser det färdiga sql-statementet ut?

Permalänk: https://www.webforum.nu/p/835421

## #5 — G8, 2002-10-26T15:33Z

Så här ser koden ut... och det är alltså när jag skriver in ett backslash som det blir fel, annars funkar det perfa...

connection ligger längre upp på sidan...

```
function fixa(fix)
fix = Replace(fix,"'", "''")
fix = Replace(fix,"|","")

fixa = fix
end function

nick = fixa(Request.Form("nick"))
Icq = fixa(Request.Form("icq"))
email = fixa(Request.Form("email"))
country = fixa(Request.Form("usercountry"))
info = fixa(Request.Form("info"))
city = fixa(Request.Form("city"))
homepage = fixa(Request.Form("homepage"))
age = fixa(Request.Form("age"))
showemail = fixa(Request.Form("showemail"))
uppkoppling = fixa(Request.Form("userconnection"))

Connection.Execute("UPDATE Users SET nick = '" & nick & "', icq = '" & icq & "', email = '" & email & "', country = '" & country & "', info = '" & info & "', city = '" & city & "', www = '" & homepage & "', age = '" & age & "', visaemail = '" & showemail & "', uppkoppling = '" & uppkoppling & "' WHERE ID = " & UID),,128
Connection.Close
```

//G8

Permalänk: https://www.webforum.nu/p/835481

## #6 — @nders, 2002-10-26T15:40Z

Hur ser den färdiga SQL-frågan ut? Skriv ut den med response.write istället för att exekvera den.

Mvh,

Permalänk: https://www.webforum.nu/p/835485

## #7 — G8, 2002-10-26T17:40Z

Hmm, skriver jag ut SQLsatsen så funkar det så länge som jag inte skriver bara ett backslash. Fungerar inte heller om jag skriver vad som helst och sedan en radbrytning, och där skriver ett backslash... 

Skriver jag dock ett mellanslag eller vad som helst och sedan ett backslash så fungerar det.

Mao. Varje rad jag påbörjar med ett backslash orsakar ovanstående felmess.. Nån som har en aning om vad det kan bero på?

Det är alltså fältet info jag har testat med, men det verkar gälla för alla fälten...

```
Connection.Execute("UPDATE Users SET nick = '" & nick & "', icq = '" & icq & "', email = '" & email & "', country = '" & country & "', info = '" & info & "', city = '" & city & "', www = '" & homepage & "', age = '" & age & "', visaemail = '" & showemail & "', uppkoppling = '" & uppkoppling & "' WHERE ID = " & UID),,128
Connection.Close

MYMESSAGE = Server.URLEncode("Your profile was updated!<br><br>Please wait...</font><p>") & nick& ", " & age & ", " & icq & ", " & email & ", " & country & ", " & info & ", " & City & ", " & homepage
Response.Redirect ("delay.asp?DELAY_TIME=3&DELAY_MESSAGE=" & MYMESSAGE & "&REDIRECT_URL=editprofile.asp")
```

//G8

Permalänk: https://www.webforum.nu/p/835582

## #8 — G8, 2002-10-26T17:40Z

du kan förresten kolla själv... la upp en sida med samma kod på min burk..

bottagen

(designen suger jag vet, men det är knappast sådet ska se ut sedan... ;)

//G8

Permalänk: https://www.webforum.nu/p/835584

## #9 — LarsG, 2002-10-26T17:46Z

Om du ändra fixa till detta då.

```
function fixa(fix)
fix = Replace(fix,"\","\\")
fix = Replace(fix,"'", "&#92'")

fixa = fix
end function
```

Mysql hittar alltid på en massa egna konstigheter.

Permalänk: https://www.webforum.nu/p/835588

## #10 — G8, 2002-10-26T18:09Z

Jag antar att du menar:

```
function fixa(fix)
fix = Replace(fix,"\","\\")
fix = Replace(fix,"'", "''")

fixa = fix
end function
```

Får felmeddelande annars...

Men, det verkar funka nu iaf.

Tack för hjälpen

//G8

Permalänk: https://www.webforum.nu/p/835595

---

Tråden på webben: https://www.webforum.nu/amne/asp/57151-error-in-your-sql-syntax
