Avatar billede starf Nybegynder
29. juni 2002 - 02:44 Der er 8 kommentarer og
1 løsning

Underlig FELJ

Hey

nogle der kan forklare mig hvorfor jeg får følgende fejl

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error in FROM clause.

/order_admin.asp, line 12


og hvordan jeg løser problemet... Min kode er som følgende...

<link rel="stylesheet" type="text/css" href="admin.css">
<body><%


Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("database/database.mdb")
%>
<% mode = request("mode") %>
<% if mode = "" then %>
<%
SQL = "SELECT * FROM order"
set rs = Conn.execute(SQL)
if rs.EOF then
%>

<a href="ret.asp?mode=logaf">logaf</a>
Intet i db'en
<%
else
%>
<a href="ret.asp?mode=logaf">logaf</a>
<table width="400">
<tr>
<td><b>ID1:</b></td>
<td><b>Order Info:</b></td>
<td><b>Firma:</b></td>
<td><b>Navn:</b></td>
<td><b>Telefon:</b></td>
<td><b>Date:</b></td>
</tr>
<%
Do Until rs.EOF
%>
<tr>
<td valign="top"><a href="?mode=ret&id1=<%=rs("id1")%>"><%=rs("id1")%></td>
<td valign="top"><%=rs("order_info")%></td>
<td valign="top"><%=rs("firma")%></td>
<td valign="top"><%=rs("navn")%></td>
<td valign="top"><%=rs("kontakt")%></td>
<td valign="top"><%=rs("Date")%></td>
</tr>
<%
rs.MoveNext
Loop
end if
%>
<% end if %>
<% if mode = "ret" then %>
<form method="POST" action="?mode=ret2&id1=<%=Request.QueryString("id1")%>"> 
<%
SQL = "Select * From order where id1="& Request.QueryString("id1")
set rs = Conn.execute(SQL)
%>
Id1: <%=rs("id1")%><br><br>
serial:<br>
<input type="text" size="10" name="serial"><%=rs("order_info")%></textarea><br><br>

<br><br>
Kategori:<br>
<input type="text" size="10" name="kategori"><%=rs("firma")%></textarea><br><br>
<br><br>

<br><br>
info_txt:<br>
<textarea name=info_txt rows=10 cols=50><%=rs("navn")%></textarea><br><br>
<input type="submit" value="Send">
</form>



<% end if %>
<% if mode = "ret2" then %>
<%
Set rs = Server.CreateObject("ADODB.RecordSet")

strSQL = "Select * From product where id1=" & Request.QueryString("id1")
rs.Open strSQL, Conn, 1, 3

rs("serial") = Request.form("serial")
rs("kategori") = Request.form("kategori")
rs("info_txt") = Request.form("info_txt")
rs("date") = Date()
rs.Update
%>
Rettet
<% end if %>
</html></body>
Avatar billede starf Nybegynder
29. juni 2002 - 02:46 #1
Databasen har en tabel der hedder order som ser sådan her ud:

id1 | order_info | firma | navn | kontakt | date |
Avatar billede tmceu Praktikant
29. juni 2002 - 02:47 #2
order er et reserveret ord og skal derfor omgives af [] = [order]
Avatar billede tmceu Praktikant
29. juni 2002 - 02:48 #3
Ordet ORDER bruges i SQL databaser til at sortere, eks.

SELECT * FROM Tabel ORDER BY Firma ASC
Avatar billede lp Nybegynder
29. juni 2002 - 02:48 #4
har du prøvet at udskifte:

SQL = "Select * From order where id1="& Request.QueryString("id1")

med:

SQL = "Select * From order where id1='"& Request.QueryString("id1") &"'"

i begge where clauses......?

hvad er linje 12 ?
Avatar billede lp Nybegynder
29. juni 2002 - 02:49 #5
he he, there it is... order skal du nok lave om til "orders" fx
Avatar billede tmceu Praktikant
29. juni 2002 - 02:50 #6
Ergo skal du rette denne linie:

SQL = "SELECT * FROM order"

til:

SQL = "SELECT * FROM [order]"

Du bør generelt undgå at anvende reserverede ord som tabel og feltnavne. En anden typisk fejl er, når man har felter til postnr og by, da "by" også er reserveret ord, hvilket også fremgår af ovenstående eksempel.
Avatar billede tmceu Praktikant
29. juni 2002 - 02:52 #7
Ja ok, der var lige en linie mere hvor den indgik :-)
Avatar billede starf Nybegynder
29. juni 2002 - 03:52 #8
Ahhhh Jepper det var fejlen.. virker fint når jeg bare kalder den orders... går ud fra jeg skal give point til tmceu ?

Men tak for hjælpen folkens
Avatar billede tmceu Praktikant
29. juni 2002 - 03:59 #9
Det var så lidt. Og mht. point, jo det vil jeg mene :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester