03. oktober 2001 - 19:01
Der er
29 kommentarer og 1 løsning
Hvad betyder denne fejl?
Hej Hvad betyder denne fejl helt præcis?? --- Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record. --- Og hvordan løser man problemet?
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
03. oktober 2001 - 19:04
#1
det betyder at det recordset du har hendtet er tomt. Du kan efter du har åbet et record test om BOF eller EOF er sat: if not (rs.BOF or rs. EOF) then ...<udskriv data>... else Søgningen/Databasen er tom end if
03. oktober 2001 - 19:04
#2
Kan jeg se dit script?
03. oktober 2001 - 19:10
#3
Nu kommer den ikke med fejlen,når jeg har sat koden ind. Men det er altså ikke rigtigt. Der er noget i databsen. Min kode ser sådan ud: <% set conn = server.createobject(\"ADODB.connection\") path = Server.MapPath(\"_private/db.mdb\") conn.Open \"DBQ=\"& path &\";DefaultDir=\"& path & \";Driver={Microsoft Access Driver (*.mdb)}\" SQL = \"SELECT * FROM info INNER JOIN ekstra ON info.cpr = ekstra.cpr WHERE info.cpr=\" & request.Querystring(\"cpr\") set RS = Conn.Execute(SQL) %> Mvh. Jacob
03. oktober 2001 - 20:27
#4
Får du en fejl?
03. oktober 2001 - 21:42
#5
Ja, nu får jeg denne fejl - igen :-) Too few parameters. Expected 1. Hvad kan dette skyldes?
03. oktober 2001 - 21:46
#6
Det kunne skyldes at request.Querystring(\"cpr\") ikke har en værdi. prøv response.write SQL lige inden, set RS = Conn.Execute(SQL)
03. oktober 2001 - 21:52
#7
Jeg får stadig den samme fejl.
03. oktober 2001 - 21:57
#8
ja men hvad skriver den? Noget i stil med : SELECT * FROM info INNER JOIN ekstra ON info.cpr = ekstra.cpr WHERE info.cpr=
03. oktober 2001 - 22:00
#9
Nej, den skriver kun den sammen fejl med \"Too few parameters. Expected 1.\"
03. oktober 2001 - 22:04
#10
Jeg ville prøve dette: Skriver den ikke noget ud? SQL = \"SELECT * FROM info INNER JOIN ekstra ON info.cpr = ekstra.cpr WHERE info.cpr=\" & request.Querystring(\"cpr\") response.write SQL set RS = Conn.Execute(SQL) %> Hvordan linker du til filen? filnavn.asp?cpr=xxx
03. oktober 2001 - 22:21
#11
Nu får jeg denne fejl: Data type mismatch in criteria expression. Hvad betyder det?
03. oktober 2001 - 22:24
#12
er cpr et tal eller tekst? Hvis det er tekst: SQL = \"SELECT * FROM info INNER JOIN ekstra ON info.cpr = ekstra.cpr WHERE info.cpr=\'\" & request.Querystring(\"cpr\") & \"\'\"
03. oktober 2001 - 22:32
#13
Det var et tekstfelt, så nu gik fejlen væk, men jeg er nu tilabge hvor jeg startede, nemlig med denne fejl: Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record. Men hvis jeg lave den if-sætning, og udskriver sql, så står der: SELECT * FROM info INNER JOIN ekstra ON info.cpr1 = ekstra.cpr WHERE info.cpr1=\'1809693019\'
03. oktober 2001 - 22:40
#14
I databsen findes cpr1=\'1809693019\' ikke. Det er sikket fordi du udskriver fra recordset\'et response.write rs(\"cpr1\") Hvis recordset\'et (rs) er tomt kommen den fejl når man eks.vis forsøger at udskrive. set conn = server.createobject(\"ADODB.connection\") path = Server.MapPath(\"_private/db.mdb\") conn.Open \"DBQ=\"& path &\";DefaultDir=\"& path & \";Driver={Microsoft Access Driver (*.mdb)}\" SQL = \"SELECT * FROM info INNER JOIN ekstra ON info.cpr = ekstra.cpr WHERE info.cpr=\'\" & request.Querystring(\"cpr\") & \"\'\" set RS = Conn.Execute(SQL) if not(rs.BOF or rs.EOF) then ...udskriv fra recordset... else Response.write \"Ingen cpr fundet\" end if
03. oktober 2001 - 22:45
#15
Nej cpr\'et findes i databasen. Den gør det med alle poster.
03. oktober 2001 - 22:47
#16
udskriver du i et loop ?
03. oktober 2001 - 22:50
#17
Ja, det gør jeg, men der står, at fejlen er helt oppe i startet af koden, og mit loop, er helt nede. Har det noget at sige?
03. oktober 2001 - 22:53
#18
har du dit loop sådan her do while not rs.EOF ...udskriv rs.movenext loop ?
03. oktober 2001 - 22:54
#19
Jep, det har jeg.
03. oktober 2001 - 22:59
#20
hvilken liner kommer fejlen i ?
03. oktober 2001 - 23:03
#21
Nej, det er min fejl. Her står der ikke noget om hvor det er henne. Beklager.
03. oktober 2001 - 23:17
#23
Jeg er desværre nød til at hoppe til køjs nu, så jeg ser nærmere på det i morgen. Foreløbig tak for din hjælp. Og nej, jeg har ikke noget rs.movenext uden for mit loop. Jeg har også sat en \' foran hele mit loop.
03. oktober 2001 - 23:20
#24
Bruger du rs et sted uden for loop\'et?
04. oktober 2001 - 16:30
#25
Nu har jeg fundet ud af hvad fejlen er. Den kommer nemlig kun, når du vil vise en post, som ikke har en relation i den anden tabel. Altså hvis der kun er noget i den ene, så kommer fejlen. Hvordan kan man løse dette problem?
04. oktober 2001 - 17:35
#26
Prøv at lave en LEFT JOIN i stedet for en INNER JOIN: SQL = \"SELECT * FROM info LEFT JOIN ekstra ON info.cpr = ekstra.cpr WHERE info.cpr=\'\" & request.Querystring(\"cpr\") & \"\'\"
04. oktober 2001 - 17:41
#27
Sådan du! Du kører det sku bare. Jeg bukker og takker. Du får dine point - håber du er tilfreds? Mvh. Jacob
04. oktober 2001 - 17:41
#28
hov hed cpr ikke cpr1 i info tabellen...
04. oktober 2001 - 17:43
#29
mange tak, ja jeg er tilfreds.
04. oktober 2001 - 17:45
#30
Jo den hed cpr1, men det opdagede jeg selv :-) Det er godt du er tilfreds. Endnu engang mange tak.
Kurser inden for grundlæggende programmering