du har aldrig definierat Addera, som skall vara en sql-fråga.
Addera = "SELECT * FROM Tabellen WHERE bla='bla'"
rec.open ....
(varför kallar du den addera? det ser inte ut som om du lägger till någonting...)
30 svar · 360 visningar · startad av Goosefish
Hej!
Det står att det är något fel på parametrarna och en massa annat!...rad 22 var de visst kolla koden:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF">
<!-- #inlude virtual="adovbs.inc -->
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver ={ Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\databas.mdb
If Request.Querystring("Ordning") = "Namn" Then
Set rec = Server.CreateObject("ADODB.Recordset")
rec.Open Addera, Connect, adOpenStatic, adLockOptimistic
%>
<%=rec("Namn")%>
<%=rec("Efternamn")%>
<%=rec("ICQ")%>
<%=rec("Email")%>
<%=rec("Hemsida")%>
<%
rec.Close
Connect.Close
End If
%>
</body>
</html>
du har aldrig definierat Addera, som skall vara en sql-fråga.
Addera = "SELECT * FROM Tabellen WHERE bla='bla'"
rec.open ....
(varför kallar du den addera? det ser inte ut som om du lägger till någonting...)
har provat det...men det gör ingen skillnad. Då man gjort det ser det ut så här
<!-- #inlude virtual="adovbs.inc" --><%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\adressbok.mdb"
If Request.Querystring("Ordning") = "Namn" Then
Addera = "SELECT * FROM adresstabell "
End If
Set RecSet = Server.CreateObject("ADODB.Recordset")
RecSet.Open Connect, Addera, adOpenStatic, adLockOptimistic
%>
<%=RecSet("Namn")%>
<%=RecSet("Efternamn")%>
<%=RecSet("ICQ")%>
<%=RecSet("Email")%>
<%=RecSet("Hemsida")%>
<%RecSet.Update
RecSet.Close
Connection.Close
%>
hmm jag gissar på (Idg)
vad får du för exakt felmess....och vilken linje är det...du får gärna markera linjen
goosefish: uppfylls villkoret If Request.Querystring("Ordning") = "Namn" Then? prova att ta bort if-satsen runt definitionen av sql-frågan.
icaaq: svär inte!
ADODB.Recordset fel '800a0bb9'
Parametrarna är felaktiga, ligger utanför tillåtet intervall eller skapar en inbördes konflikt.
/visa.asp, rad 22
<!-- #inlude virtual="adovbs.inc" --><%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\adressbok.mdb"
If Request.Querystring("Ordning") = "Namn" Then
Addera = "SELECT * FROM adresstabell "
End If
Set RecSet = Server.CreateObject("ADODB.Recordset")
RecSet.Open Connect, Addera, adOpenStatic, adLockOptimistic <<---
%>
<%=RecSet("Namn")%>
<%=RecSet("Efternamn")%>
<%=RecSet("ICQ")%>
<%=RecSet("Email")%>
<%=RecSet("Hemsida")%>
<%RecSet.Update
RecSet.Close
Connection.Close
%>
tog bort if satsen men det är ändå samma felmeddelande
vad händer om du tar bort if-satsen runt 'addera = "select ...."'?
jag ser en liten konstig sak. du ska inte ha RecSet.update längst ner. det ska du bara ha när du gör förändringar i tabellen.
mvh,
så här tog jag bort if satsen
<!-- #inlude virtual="adovbs.inc" --><%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\adressbok.mdb"
ifsatsen borta
Addera = "SELECT * FROM adresstabell "
Set RecSet = Server.CreateObject("ADODB.Recordset")
RecSet.Open Connect, Addera, adOpenStatic, adLockOptimistic
%>
<%=RecSet("Namn")%>
<%=RecSet("Efternamn")%>
<%=RecSet("ICQ")%>
<%=RecSet("Email")%>
<%=RecSet("Hemsida")%>
<%
RecSet.Close
Connection.Close%>
prova också att byta ut dessa två rader:
Set RecSet = Server.CreateObject("ADODB.Recordset")
RecSet.Open Connect, Addera, adOpenStatic, adLockOptimistic
mot
set RecSet = Connect.Execute(Addera)
mvh,
det problemet vart löst men då kom
Microsoft OLE DB Provider for ODBC Drivers fel '80040e37'
[Microsoft][Drivrutin för ODBC Microsoft Access] Microsoft Jet kan inte hitta tabellen eller frågan 'adresstabell'. Kontrollera att den existerar och att namnet är rätt stavat
/visa.asp, rad 14
upp
jaha...nu fixa jag det problemet...men då kom förstås ett nytt
ADODB.Field fel '80020009'
Antingen är BOF eller EOF satt till True, eller så har aktuell post raderats. Den begärda åtgärden kräver en aktuell post.
?
ja det är den nog...hehe...oj
men EOF BOF problemet då?
nu står det att objekt krävs på näst sista raden?
så här:
[b]if not RecSet.eof then[/b]
Response.write RecSet("Namn")
Response.write RecSet("Efternamn")
Response.write RecSet("ICQ")
Response.write RecSet("Email")
Response.write RecSet("Hemsida")
[b]else[/b]
Response.write "den e tom ju!"
[b]end if[/b]
mvh,
nu står det att objekt krävs på näst sista raden?
du försöker där stänga ett objekt som du kallar för Connection, men det objektet som du tidigare skapat kallade du för Connect.
ändra alltså till Connect.close.
mvh,