webForumDet fria alternativet

Syntax error in INSERT INTO statement.

9 svar · 291 visningar · startad av Thompa__85

Thompa__85Medlem sedan aug. 2002601 inlägg
#1

Hejsan!
Detta är mitt felmess:
Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

/gastbok_spara.asp, line 17

detta är min kod:

sql = "INSERT INTO gb(namn,inlagg,gbid,privat,namnid,datum) VALUES('"& strName &"', '"& strPost &"', '"& strGbID &"', "& intPrivate &", '"& strNameID &"', '"& strDate &"')"
Connect.Execute(sql),,128

Å jag har dimmat så här:

Dim strName, strPost, strGbID, intPrivate, strNameID, strDate, Connect
strName = Session("user")
strPost = Request.Form("text")
strGbID = Request.Querystring("id")
intPrivate = Request.Form("privat")
strNameID = Session("id")
strDate = Now()

Vad har jag gjort för del tro?

@ndersMedlem sedan juni 200026 914 inlägg
#2

När man har problem med en SQL-fråga skriver man ut den färdiga SQL-frågan med response.write. Då blir det lättare att felsöka.

M.CheraghiMedlem sedan juli 20013 362 inlägg
#3

Jag tror att fältet datum är ett reserverat ord!
För säkerhets skull byt namn på fältet i databasen!

Thompa__85Medlem sedan aug. 2002601 inlägg
#4

@nders skrev:

När man har problem med en SQL-fråga skriver man ut den färdiga SQL-frågan med response.write. Då blir det lättare att felsöka.

får inte ut det.. har försökt.. men måste ha skrivit fel eller nått.. hur skriver ni ut min sql-sats?

PeeerMedlem sedan mars 20025 362 inlägg
#5
sql = "INSERT INTO gb(namn,inlagg,gbid,privat,namnid,datum) VALUES('"& strName &"', '"& strPost &"', '"& strGbID &"', "& intPrivate &", '"& strNameID &"', '"& strDate &"')"
response.write "SQL: " & sql
response.end
Connect.Execute(sql),,128

/me tippar på att du ska ha enkelfnuttar runt intPrivate också.. antar att det är datatypen "text" eller liknande i databasen?

Thompa__85Medlem sedan aug. 2002601 inlägg
#6

Peeer skrev:

sql = "INSERT INTO gb(namn,inlagg,gbid,privat,namnid,datum) VALUES('"& strName &"', '"& strPost &"', '"& strGbID &"', "& intPrivate &", '"& strNameID &"', '"& strDate &"')"
response.write "SQL: " & sql
response.end
Connect.Execute(sql),,128

/me tippar på att du ska ha enkelfnuttar runt intPrivate också.. antar att det är datatypen "text" eller liknande i databasen?

Så här skrev den ut:

SQL: INSERT INTO gb(namn,inlagg,gbid,privat,namnid,datum) VALUES('Thomsson', 'Testing testing', '{54297C51-F67C-4C98-9795-6151BFADFF84}', , '{33BD0255-46BC-4E2C-82EC-20E8DE9DDFF6}', '2004-01-26 19:16:58')

Nej 1 eller inget är privat...
säger detta er nått?

@ndersMedlem sedan juni 200026 914 inlägg
#7

Privat har ju inget värde. Det måste det ha.

Thompa__85Medlem sedan aug. 2002601 inlägg
#8

@nders skrev:

Privat har ju inget värde. Det måste det ha.

Okej, här hämtar den privat:
<input type="checkbox" name="privat" value="1" accesskey='p'>
Om den är ikryssad så är det en 1:a.. hur gör jag så de blir en nolla annars?

Privat är av datatyp Tal i databasen..

PeeerMedlem sedan mars 20025 362 inlägg
#9

intPrivate har inget värde. Du får göra en kontroll innan för att se till så den verkligen har det.

typ:

if Request.Form("privat") <> ""
intPrivate = Request.Form("privat")
else
intPrivate = 0
end if

Det var inte igår jag pysslade med asp, så koden kanske inte fungerar, men ideen gör det nog.

Thompa__85Medlem sedan aug. 2002601 inlägg
#10

Peeer skrev:

intPrivate har inget värde. Du får göra en kontroll innan för att se till så den verkligen har det.

typ:

if Request.Form("privat") <> ""
intPrivate = Request.Form("privat")
else
intPrivate = 0
end if

Det var inte igår jag pysslade med asp, så koden kanske inte fungerar, men ideen gör det nog.

Tack det löste problemet! tack!

Genererad på 382 ms · cache AV · v20260730165559-full.f96bc7eb