06. oktober 2006 - 13:41Der er
10 kommentarer og 1 løsning
Fejl: ADODB.Recordset (0x800A0BB9)
Hej Eksperter
Jeg har læst i flere tråde om denne fejl ("Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another."), men kan ikke finde fejlen på min egen side. Koden er forneden og fejlen opstår i denne sætning: ---------------------------------------- rst.Open strQuery, conn, adOpenDynamic, adLockOptimistic ----------------------------------------
<% Option Explicit Response.Expires = 0 Dim Conn, rst, rst2 Dim strKriterie, strWhere, strQuery Dim Kundenr, Sessionnr, Ordrenr Dim Fejl, iX , EuroP, USDP, SumEuro, SumUSD Set rst = Server.CreateObject("ADODB.Recordset") Set rst2 = Server.CreateObject("ADODB.Recordset") %> <!--#include file="../inc/adovbs.asp" --> <!-- Forbindelse til database --> <!--#include file="../inc/Connect.asp" --> <% if Len(Trim(Request.querystring("Ordrenr"))) > 0 then Ordrenr = Trim(Request.querystring("Ordrenr")) Sessionnr = session.SessionID end if
Hej Nielle Undskyld ventetiden og tak for din tålmodighed.
Problemet er at jeg har bygget ovenpå et shop-system som jeg har udviddet med ydeligere kolonner i db. Jeg har prøvet at følge StrQuery fra start til fejl men kan umiddelbart ikke se hvor den går galt.
jeg skriver mere i morgen da jeg ikke sidder ved arbejdscomputeren nu men håber du stadig kan hjælpe. Endnu engang tak for tålmodigheden. :)
Det oprindelige problem er løst, jeg får ihvertfald ikke den fejl mere. Men hvis du kan hjælpe med en procent udregning ville jeg være meget glad. Jeg har skrevet følgende:
Problemet er at jeg får fejl i første linie: ADODB.Recordset (0x800A0CC1) Item cannot be found in the collection corresponding to the requested name or ordinal.
Umiddelbart lyder fejlbeskeden som om at der ikke findes et felt som enten hedder EuroP eller Discount i den tabel som du har udtrukket data fra ... eller at du ikke har SELECT'et mindste et af felterne.
Her er min SQL sætning: --------------------------------------------------------------------------------- strQuery = "SELECT * FROM tblNyKunde, tblOrdre WHERE Ordrenr ='" & Ordrenr & "'" ---------------------------------------------------------------------------------
tblNyKunde og tblOrdre er to individuelle tabeller men med en fælles kolonne "Ordrenr", Så et Ordrenr kan hente både kunde- og ordre-oplysninger.
Det er i TblOrdre hvor EuroDiscount, USDDiscount, EuroP, USDP og Discount findes.
1) Er din felt Ordernr et tal-felt eller et tekst-felt. Ved tal-felter skal der ikke '-tegn omkring.
2) Du har ikke vist mig din SQL-sætning. Du har derimod vist mig den ASP-kode som har ansvaret for at lave den, og det er noget lidt andet. Prøv at udskrive den fejlende SQL-sætning *før* at du forsøger at udføre den:
Hej igen. Jeg har ændret strukturen i db og er kommet videre siden sidst. Mange tak for din hjælp og undskyld al den vente tid. Giv et svar og pointsne er dine. :)
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.