07. maj 2002 - 12:41
Der er
13 kommentarer og 1 løsning
Hvad er der galt her ???
<% Dim strpath, strDSN, cn, rs, ArtSQL '*** Åbne connection strPath = server.Mappath("Artikler.mdb") strDSN = "provider = microsoft.jet.OLEDB.4.0; Data Source =" & strPath set cn = server.createobject("ADODB.Connection") cn.open strDSN If artikel = "" then If artikelID = "" then ArtSQL = "SELECT Artikel.forfatter, Artikel.title, Artikel.info, Artikel.dato, Artikel.emne FROM Artikel ORDER BY Artikel.dato DESC;" Set rs = cn.Execute(ArtSQL) <-- Dette er linie 15 Do While Not rs.EOF Response.write "Her ses " & Info & "" rs.MoveNext Loop else ArtSQL = "SELECT Artikel.forfatter, Artikel.title, Artikel.info, Artikel.dato, Artikel.Emne FROM Artikel WHERE (((Artikel.ID)=" & ArtikelID & "));" Set rs = cn.Execute(ArtSQL) Do While Not rs.EOF rs.MoveNext Loop End if else Art3SQL = "SELECT Artikel.forfatter, Artikel.title, Artikel.info, Artikel.dato, IDConfig.Emne, IDConfig.EmneID FROM IDConfig INNER JOIN Artikel ON IDConfig.Emne = Artikel.Emne WHERE (((IDConfig.EmneID)=" & Artikel & ")) ORDER BY Artikel.dato DESC;" Set rs = cn.Execute(Art3SQL) Do While Not rs.EOF rs.MoveNext Loop '*** her skal spicifike artikler udvælges, by dato desk End if '*** Vi lukker til sidst vores database forbindelse... cn.Close Set cn = Nothing %> -------------------------------------------------------- den retunere : Microsoft JET Database Engine error '80040e10' No value given for one or more required parameters. /infoC/aspjens/Artikel.inc, line 15 -------------------------------------------------------- Jeg har stiret mig blind på det, og kan ikke lige finde fejlen...
Annonceindlæg fra FPT Software
Hvilken linie er linie 15 i filen Artikel.inc ??
Du åbner db forbindelsen 2 gange og det kan vist ikke Artikel.forfatter er det smart at have . imellem?
nej jeg overså dine if ting
du mangler at definere rs: set rs = Server.CreateObject("ADODB.RecordSet")
zeptic >>> Rs er ikke et recordset... og skal heller ikke være det gizom >>> der er ikke noget galt med Artikel.forfatter, det betyder: Artikel er den tabel jeg henter fra, forfater er feltet...
rs skal være et recordset når du bruger: cn.Execute(ArtSQL). Execute returnerer nemlig et recordset.
md_craig :> ÅK jeg bliver sq da så klog. Er det ren SQL syntax?
Never mind det var en fejl i min SQL, men hvor den var ved jeg ikke
Zeptic >>> Nej rs behøver ikke være et recordsæt, og hvis du stadig er påståelig så kan jeg sige at det virker nu... UDEN et recordset... <% Dim strpath, strDSN, cn, rs, StrSQL '*** Åbne connection strPath = server.Mappath("Artikler.mdb") strDSN = "provider = microsoft.jet.OLEDB.4.0; Data Source =" & strPath set cn = server.createobject("ADODB.Connection") cn.open strDSN If artikel = "" then If artikelID = "" then StrSQL = "SELECT Artikel.ID, Artikel.Forfatter, Artikel.Titel, Artikel.Info, Artikel.Emne, Artikel.Dato FROM Artikel ORDER BY Artikel.Dato DESC;" Set rs = cn.Execute(StrSQL) Do While Not rs.EOF Response.write rs("info") rs.MoveNext Loop else StrSQL = "SELECT Artikel.ID, Artikel.Forfatter, Artikel.Titel, Artikel.Info, Artikel.Emne, Artikel.Dato FROM Artikel WHERE (((Artikel.ID)=" & ArkikelID & "));" Set rs = cn.Execute(StrSQL) Do While Not rs.EOF Response.write rs("info") rs.MoveNext Loop End if else StrSQL = "SELECT Artikel.ID, Artikel.Forfatter, Artikel.Titel, Artikel.Info, Artikel.Dato, IDconfig.Emne, IDconfig.EmneID FROM IDconfig INNER JOIN Artikel ON IDconfig.Emne = Artikel.Emne WHERE (((IDconfig.EmneID)=" & Artikel & ")) ORDER BY Artikel.Dato DESC;" Set rs = cn.Execute(StrSQL) Do While Not rs.EOF Response.write rs("info") rs.MoveNext Loop '*** her skal spicifike artikler udvælges, by dato desk End if '*** Vi lukker til sidst vores database forbindelse... cn.Close Set cn = Nothing %>
muligvis pga. ;'et i slutningen
nu kan jeg se det... jeg kom til at skrive Title i stedet for Titel
md_craig: jeg var ikke klar over at man ikke behøvede at definere recordset før brug. Det sker åbenbart automagisk, for du tilgår rs som var det et recordset.
eller en simpel variabel...
Zeptic >>> der er heller ikke noget galt med ; i slutningen af en SQL setning/streng...
Kurser inden for grundlæggende programmering