webForumDet fria alternativet

konkatinering av sqlsats

ASP

7 svar · 298 visningar · startad av LR^evil.sid

Medlem sedan maj 2002560 inlägg
Frågan#1

Jag får ett fel när jag försöker köra denna koden:

[red]sql = "insert into articles, grade, comment, source " & _
      "(articles.article, " & _
      "articles.ingress, " & _
      "articles.artdate, " & _
      "articles.region, " & _
      "articles.tip, " & _
      "articles.headline, " & _
      "source.source, " & _
      "source.link, " & _
      "source.author, " & _
      "source.artid, " & _
      "grade.value, " & _
      "grade.ingress, " & _
      "grade.art, " & _
      "grade.humor, " & _
      "grade.artid, " & _
      "comment.artid, " & _
      "comment.sid, " & _
      "comment.cotti) " & _
      "values " & _
      "('"&text&"', " & _
      "'"&ingress&"', " & _
      "'"&indate&"', " & _
      "'"&region&"', " & _
      "'"&tip&"', " & _
      [b][blue]"'"&headline&"', " & _[/blue][/b]
      "'"&source&"', " & _
      "'"&link&"', " & _
      "'"&author&"', " & _
      id&", " & _
      gradevalue&", " & _
      gradeingress&", " & _
      gradeart&", " & _
      gradehumor&", " & _
      id&", " & _
      id&", " & _
      "'"&sid&"', " & _
      "'"&cotti&"')"
response.write sql[/red]

Felmeddelandet: Expected end of statement. Rad 66

Medlem sedan juni 20019 519 inlägg
#2

1. Har du gjort så att SQL koden stämmer ihop med hur din databas-uppbyggnad?
2. Expected end of statement.. hur ser dim värdet av headline ut? kan den innehålla ' ??

Jag har för mej att ASP klagar på hela SQL satsen.. inte bara den raden... kan ha fel.. headline är inget tal?

Medlem sedan maj 200010 687 inlägg
#3

"Expected end of statement" är väl inget SQL fel, utan något fel som kommer när det konkateneras...

Medlem sedan maj 2002560 inlägg
#4

headline är av typen string det skall den vara. tror inte detta är ett "sql-fel" utan bara ett konkatineringsfel

[red]	headline = trim(request.form("headline"))
	headline = replace(headline, chr(34), """)
	headline = replace(headline, chr(39), "'")[/red]

sqlsatsens alla fält existerar i databasen

[ red ]om jag plockar bort '"&headline&"' så fungerar strängen utan problem men då säger det ju sig självt att det blir fel när jag skall skriva till databasen.

Medlem sedan maj 2002560 inlägg
#5

hör och häpna...

jag döpte om variabeln headline till headlines -> fungerade inte
jag döpte om variabeln headline till var -> fungerade
jag döpte om variabeln headline till rubrik -> fungerade
jag döpte om variabeln headline till header -> fungerade inte

teori någon?

Medlem sedan feb. 200112 078 inlägg
#6

Exakt vad innehåller variabeln headline?

Det är inte så att den innehåller nåra mysko specialtecken eller kanske en apostof eller tre? ( ' )

Medlem sedan juni 20022 599 inlägg
#7

Kombinationen &h i VBScript signalerar att det som följer efter är ett hexadecimalt tal, vilket det inte är i detta fallet. Det är därför du får problem. Om du skriver & headline & i stället så fungerar det.

Medlem sedan maj 2002560 inlägg
#8

override: det skall ju inte spela någon roll. jag har ju bytt ut alla ( ' ) mot '

niko: thnx, ska kolla upp det med en gång

263 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)