webForumDet fria alternativet

Microsoft JET Database Engine error '80040e14'

7 svar · 283 visningar · startad av ptr_lks

ptr_lksMedlem sedan juni 2005584 inlägg
#1

Hej,
jag har min sida hos brinkster. Och Använder mig utav Access 2003
Koden

Set gbok = Server.CreateObject( "Adodb.Connection" )
gbok.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath("\spif93\db\guests.mdb")
gbok.ConnectionString = "Data Source='" & MdbFilePath & "'"
gbok.open

namn = Request.Form("namn")
Message = Request.Form("message")

strSQL = "INSERT INTO coach(heter, text, dag) VALUES('" & namn & "','" & Message & "','" & now() & "')"

gbok.Execute( strSQL )
Set gbok = Nothing

Response.Redirect "p93_coach.asp"

ger följande felmeddelande

Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

Hittar tyvärr inte felet själv

LarsGMedlem sedan dec. 200012 464 inlägg
#2

text är ett reserverat ord i Jet SQL. Kanske ett byte av kolumnnamn.

Peter SMedlem sedan dec. 20025 483 inlägg
#3

Hej!

text är ett reserverat ord. Dessutom skall datum i Access omges av #-tecken, så:

,#" & now() & "#)"

Red./ Något sen uppenbarligen

GlitterMedlem sedan juli 2003465 inlägg
#4

/R hmm blev lite sent..

LarsGMedlem sedan dec. 200012 464 inlägg
#5

Det där med datum gäller väl bara versioner äldre än Access 2002, eller?

Peter SMedlem sedan dec. 20025 483 inlägg
#6

LarsG skrev:

Det där med datum gäller väl bara versioner äldre än Access 2002, eller?

Det har du rätt i :bire

ptr_lksMedlem sedan juni 2005584 inlägg
#7

byte av kolumn namn löste ett problem...

Microsoft VBScript runtime error '800a000d'

Type mismatch: 'FirstVersal'

set rsGbok = Server.CreateObject("ADODB.Recordset")

minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\spif93\db\guests.mdb")
strSQL =" SELECT * FROM coach ORDER by ID DESC"
rsGbok.Open strSQL, minCon, 3, 3
Do While Not rsGbok.EOF
//'eftersom sidan ligger på en amerikansk server så har vi 6 timmars tidsdifferens
indag = Cdate(rsGbok("dag"))
vdag = DateAdd("h",6,indag)
dat = FirstVersal(WeekDayName(WeekDay(vdag)))&"en "& " den " & fix(DatePart("d", vdag)) & "  " & MonthName(Month(vdag)) &" kl " & FormatDateTime(vdag,4) 
Response.Write "<P>" & dat & " skrevs följande:</P>"
//' i VBScript kan man inte använda sig utav radbrytningar därför behövs följande: Replace(rsGbok("mess"), vbCrLf, "<br>" & vbCrLf)
Response.Write "<P><B><FONT SIZE=""4""><I>" & Replace(rsGbok("mess"), vbCrLf, "<br>" & vbCrLf) & "</I></FONT></B></P><BR><B><U>"
Response.Write "      av:"
Response.Write "</U></B>   " & rsGbok("heter")
Response.Write "<P></P><P></P><HR></HR>"

  rsGbok.MoveNext

  Loop
  rsGbok.Close
  Set rsGbok = Nothing
  minCon.Close
  Set minCon = Nothing
ptr_lksMedlem sedan juni 2005584 inlägg
#8

löste problemet själv
det fattades:

<%  dim minCon 'Connection
     dim rsGbok 'recordsetten f&ouml;r nya inl&auml;gg
     dim strSQL

dim indag, dat
Session.LCID = 1053 
function fix(S)
  if S > 2 AND S <= 20 then 
     fix = S & "e"
	 Else
  if S > 23 AND S <= 30 then
   fix = S & "e"
    Else
    fix = S & "a"
  end if
  end if
 end function
 'byta ut första bokstaven
Function FirstVersal(txt)
      versal = UCase(Left(txt,1)) & LCase(Right(txt, Len(txt)-1))
  FirstVersal = versal
End Function
%>
133 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)