Avatar billede para7 Nybegynder
28. oktober 2009 - 21:26 Der er 7 kommentarer og
1 løsning

DB kald godtager ikke parameter mere

Der er pludselig opstået en fejl på en side der har kald til Access dB. Jeg har indkredset fejlen til en parameteren:
indlaegsid

Fejlmeddelelsen er:

Microsoft OLE DB Provider for ODBC Drivers fejl '80040e10'

[Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var ventet 1.

/offbeats.dk/forum/Forum/forum.asp, linje 35


Kodeblokken er:

'hvilket indlæg skal hentes hvis der ikke er valgt et vælges det nyeste... er det [nyt] ?
Set ny = Server.CreateObject("ADODB.RecordSet")
idnr=Request.QueryString("id")
erdenny=1
if idnr="" then
    idnr=poster("indlaegsid")
    strSQL =     "SELECT COUNT(*) AS antal FROM historik WHERE brugerid=" & session("brugerid") & " AND indlaegsid=" & poster("indlaegsid")
    ny.Open strSQL, ObjConn, adOpenForwardOnly, adLockReadOnly
    erdenny=ny("antal")
    ny.close
end if
Avatar billede para7 Nybegynder
28. oktober 2009 - 21:28 #1
Jeg har tjekket at værdierne er der i databasen, og prøvet uden held at manuelt indsætte værdien for indlaegsid - Meget mærkeligt...
Avatar billede michael_stim Ekspert
28. oktober 2009 - 21:31 #2
Hvad er linie 35? Det kunne godt lyde som om en af dine variabler ikke bliver sat.
Avatar billede michael_stim Ekspert
28. oktober 2009 - 21:32 #3
Og har du prøvet at udskrive din sql?
Avatar billede para7 Nybegynder
28. oktober 2009 - 21:42 #4
Linje 35 er såmænd bare der hvor sql strengen executes. Alle variabler undtagen lige indlaegsid er godtaget. Det kan jeg se ved at fjerne den fra sql sætningen. Har også udskrevet den.
Avatar billede michael_stim Ekspert
28. oktober 2009 - 21:45 #5
Og hvor får du poster() fra?
Avatar billede michael_stim Ekspert
28. oktober 2009 - 21:46 #6
Skal du ikke have idnr i stedet for poster i din querystring?

strSQL =    "SELECT COUNT(*) AS antal FROM historik WHERE brugerid=" & session("brugerid") & " AND indlaegsid=" & idnr
Avatar billede para7 Nybegynder
28. oktober 2009 - 22:48 #7
Tak michael_stim
Jeg henter data i Access database. Jeg har prøvet at indsætte manuelt id, og som du foreslår. Fatter ikke hvad der er opstået af fejl...
Avatar billede para7 Nybegynder
29. oktober 2009 - 09:39 #8
DET var EN FEJL I DATABASEN.

Relationer-oversigten viser der er lavet relationer til tabellen historik, der

har et feltnavn som hedder indlægsid, og æ er jo forbudt.
Så det har jeg omdøbt feltet, så det passer med kodernes kald. Kan være at jeg har Komprimeret og repareret databasen, version 2000, og at det så har ødelagt noget. Har ikke nogen backup af databasen.

LØSNINGEN VAR AT KONVERTERE DATABASEN TIL V.2003, SÅ KØRTE FORUM SIDEN IGEN.

MEN. Når jeg åbner tabellen Brugere kommer der denne fejl to gange, og så kan man åbne tabellen. Det kunne have med spørgsmålets fejl at gøre.

"Microsoft Jet-Databasemotoren kan ikke finde objektet "indlæg". Kontroller, at objektet finDes og at du har stavet navnet og stien korrekt".
Der er en tabel med navnet indlaeg, men ikke stavet med dansk æ.
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