webForumDet fria alternativet

Enkelt fel?

ASP

6 svar · 218 visningar · startad av [AMD]Zmaster

Medlem sedan mars 20021 716 inlägg
Frågan#1

Ni som läser detta tycker säkert att detta är ett löjligt inlägg, eftersom det säkert finns en smart lösning, men jag har suttit i en timme å inte fattat vad som är fel.
(Jag håller på å lär mig ASP, började typ igår)

Jag försöker med nedanstående script hämta information från min databas: databasen.mdb, i tabellen som heter Tabell1.

<%
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("databasen.mdb")&";"

SQLsats = "Select * From Tabell1"
Set RS = Con.Execute("SQL")

Do Until RS.EOF
Response.Write RS("Namn") & " - " & RS("Email") & " - " RS("Hemsida") & "<br>"
RS.MoveNext
Loop
%>

men jag får felmeddelandet:

Kompileringsfel i Microsoft VBScript (0x800A0401)
Slut på programsats förväntas.
/test/tester.asp, line 9, column 56
Response.Write RS("Namn") & " - " & RS("Email") & " - " RS("Hemsida") & "<br>"
-------------------------------------------------------^

Webbläsare:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

Sida:
GET /test/tester.asp

vad kan vara fel?

Medlem sedan dec. 200012 464 inlägg
#2
Response.Write RS("Namn") & " - " & RS("Email") & " - " [b] & [/b]RS("Hemsida") & "<br>"
Medlem sedan mars 20021 716 inlägg
#3

Du menar alltså att det ska vara så här:

<%
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("databasen.mdb")&";"

SQLsats = "Select * From Tabell1"
Set RS = Con.Execute("SQL")

Do Until RS.EOF
Response.Write RS("Namn") & " - " & RS("Email") & " - " & RS("Hemsida") & "<br>"
RS.MoveNext
Loop
%>

detta ovan fungerade inte, då kom detta felmeddelande upp:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Ogiltigt SQL-uttryck. 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT' eller 'UPDATE' förväntades.
/test/tester.asp, line 6

Webbläsare:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

Sida:
GET /test/tester.asp

Medlem sedan mars 20021 716 inlägg
#4

Jag förstår inte vad du menar...

Medlem sedan juni 200032 967 inlägg
#5

Du har inte exekverat SQL-frågan på rätt sätt.

Set RS = Con.Execute(SQLsats)

Inom parentesen ska det stå variabelnamnet som du använde till din Select-fråga.

Mvh,

Medlem sedan juli 20011 084 inlägg
#6

ska det inte stå?
Set RS = Con.Execute("SQLsats")

är inte så hemma på det... så kanske har helt fel.

Sedan kanske en dum fråga...? men du har en databas som heter databasen.mdb och en tabell där i som heter Tabell1, lite konstiga namn så var tvungen att fråga

Medlem sedan mars 20021 716 inlägg
#7

Tackar, nu funkar det!

281 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
140 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
141 ms — ändringar (db)