08. februar 2003 - 01:22
Der er
8 kommentarer og 1 løsning
Hvad betyder denne databasefejl:
Microsoft JET Database Engine error '80040e14' Syntax error in INSERT INTO statement. /brugtbors/postad.asp, line 77 ------------------------ Linie 77 er den sidste af disse linier: Set GobjConnect = server.createobject("ADODB.Connection") GobjConnect.open gsConnect sSQL = "" sSQL = sSQL & "INSERT INTO adcontent (TopicID, name, email, address, city, state, zip, adtitle, content, link, dateposted, image, price) " sSQL = sSQL & "VALUES(" & SQLVal(catID) & ", " sSQL = sSQL & SQLStr(sName) & ", " sSQL = sSQL & SQLStr(sEmail) & ", " sSQL = sSQL & SQLStr(sAddress) & ", " sSQL = sSQL & SQLStr(sCity) & ", " sSQL = sSQL & SQLStr(sState) & ", " sSQL = sSQL & SQLStr(sZip) & ", " sSQL = sSQL & SQLStr(sTitle) & ", " sSQL = sSQL & SQLStr(sContent) & ", " sSQL = sSQL & SQLStr(sLink) & ", " sSQL = sSQL & SQLDate(Now) & ", " sSQL = sSQL & SQLStr(sImage) & ", " sSQL = sSQL & SQLVal(cPrice) & " )" GobjConnect.Execute(sSQL)
Annonceindlæg fra Kingston Technology
08. februar 2003 - 01:30
#1
Som regl betyder det man har stavet et kolonnenavn forkert eller man bruger et reserveret ord som kolonnenavn.. Eksvis er name reserveret ord i Access, så prøv at sætte [] omkrning sSQL = sSQL & "INSERT INTO adcontent (TopicID, [name], email, address, city, state, zip, adtitle, content, link, dateposted, image, price) " En anden ting hvis TopicID er autonummer skal den ikke med i SQL sætningen.
08. februar 2003 - 01:35
#2
Jeg antger dine functioner SQLStr sætter ' omkring teksten som der skal i SQL når det er en streng? Hvis du har Access og dateposted skal være lig Now() så brug den Now som er i Access: Så denne linie: sSQL = sSQL & SQLDate(Now) & ", " Bliver til: sSQL = sSQL & "Now(), "
08. februar 2003 - 01:53
#3
Desværre - intet af dine forslag virker.
08. februar 2003 - 01:55
#4
Hvad gør funktionen SQLStr ?
08. februar 2003 - 01:59
#5
Hvilken data type er de forskellige kolonnner.
08. februar 2003 - 02:13
#6
Eks på en SQL: SQL = "INSERT INTO tabel (txtKol, talKol) VALUES ('test her', 232)" Du kan evt prøve at sætte [] omkring alle kolonne for en sikkerheds skyld: sSQL = sSQL & "INSERT INTO adcontent ([TopicID], [name], [email], [address], [city], [state], [zip], [adtitle], [content], [link], [dateposted], [image], [price]) " Har du tjekket at alle kolonnenavne er skrevet korrekt?
08. februar 2003 - 10:08
#7
Beklager jeg ikke svarede igår (faldt i søvn) Jeg tror at problemet skyldes databaseadgangen? Når jeg kører scriptet på et andet webhotel: Dandomain, virker det fint. Når jeg kører det på mit nuværende hos Azero får jeg den omtalte fejl. Og jeg har skriveadgang: Kan jeg skrive denne databaseforbindelse på en anden måde?: gsConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=d:\home\mitdomainenavncom\db\XcClassifiedLite.mdb;"
08. februar 2003 - 10:18
#8
Nej...Nu har jeg prøvet flere forbindelser - ØV
08. februar 2003 - 10:22
#9
....Har fundet fejlen nu - du havde ret mht. [] - da jeg indsætte på samtlige topics på hele sende og i config filen lykkedes det - TAK - Jeg var ved at blive sindsyg!
Kurser inden for grundlæggende programmering