webForumDet fria alternativet

SQL-fråga, Syntax error

Databaser & SQL

3 svar · 240 visningar · startad av Cale

Medlem sedan mars 200490 inlägg
Frågan#1

Jag körde response write på min fråga:

Dim strSQL2 As String = "UPDATE galleries SET" & _
" location_name = '" & EditedNamn & "'," & _
" location_url = '" & EditedLocation & "'," & _
" WHERE location_ID =" & Id

resultat:

UPDATE galleries SET location_name = 'Skohornen', location_url = 'images/skohorn/', WHERE location_ID =3

EditedNamn = sträng
EditedLocation = sträng
Id = tal

Felmeddelande:
System.Data.OleDb.OleDbException: Syntax error in UPDATE statement. at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(Int32 hr)... bla bla bla
admin.aspx:line 95

på den raden står det:

numRowsAffected = myCommand2.ExecuteNonQuery()
Medlem sedan juni 200032 967 inlägg
#2

Du ska inte ha kommatecken precis före WHERE.

mvh

Medlem sedan dec. 200012 464 inlägg
#3

Ett komma för mycket osså lite SQL-injectionskydd

" location_url = '" & replace(EditedLocation,"'","''") & "'" & _
Medlem sedan mars 200490 inlägg
#4

hehe, jag skulle precis skriva att jag hittade felet..
gjorde satsen i access istället o då funkade det, sen var det bara att jämföra
:)

tackar :birp

Edit:
Det är som vanligt, jag kan sitta i timmar med ett fel, men några minuter efter att jag postat en fråga i ngt forum så kommer jag på det själv.. lite irriterande

252 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)