Avatar billede dtm Nybegynder
17. november 2003 - 22:05 Der er 11 kommentarer og
1 løsning

Udtræk fra database i et link

Jeg har denne sætning, og det virker ikke....

response.write "<a href='undersider/popup.asp?id=" & rs("spiller_id") & "'>" & rs("navn") & "</a>"

Kan ikke se hvad fejlen er......


Men jeg får denne fejl-meddelse:

1. ADODB.Recordset error '800a0cc1'

Item cannot be found in the collection corresponding to the requested name or ordinal.

/rangliste.asp, line 53
Avatar billede eagleeye Praktikant
17. november 2003 - 22:08 #1
Det er fordi du enten ikke har en kolonne som hedder spiller_id eller navn i databasen eller fordi du ikke hendter en af de to kolonner med SQL sætningen.
Hvis du kun hendter eksvis navn : "SELECT navn FROM xxxx" vil du få den fejl.
Avatar billede dtm Nybegynder
17. november 2003 - 22:10 #2
Min sql-sætning, ser sådan her ud:

set rs = conn.execute ("SELECT Sum(score) AS SumTalFelt1, Sum(indgange) AS [SumTalFelt2],navn from spillerresult group by navn order by Sum(score)/Sum(indgange) desc")
Avatar billede eagleeye Praktikant
17. november 2003 - 22:14 #3
Ja der mangler spiller_id prøv:

set rs = conn.execute ("SELECT Sum(score) AS SumTalFelt1, Sum(indgange) AS [SumTalFelt2],navn,spiller_id from spillerresult group by navn order by Sum(score)/Sum(indgange) desc")
Avatar billede dtm Nybegynder
17. november 2003 - 22:17 #4
Så får jeg denne fejl...

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

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/rangliste.asp, line 18
Avatar billede eagleeye Praktikant
17. november 2003 - 22:18 #5
ok er spiller_id ikke i tabellen spillerresult ??
Avatar billede eagleeye Praktikant
17. november 2003 - 22:18 #6
arh du har og en Gruop B prøv lige:

set rs = conn.execute ("SELECT Sum(score) AS SumTalFelt1, Sum(indgange) AS [SumTalFelt2],navn,spiller_id from spillerresult group by navn, spiller_id  order by Sum(score)/Sum(indgange) desc")
Avatar billede dtm Nybegynder
17. november 2003 - 22:20 #7
det skulle jeg mene, har også prøvet med ID og med SPILLERID.... Et andet problem, er at jeg ikke har fået lagt Microsoft Access ind på min pc, så jeg kan faktisk ikke få det tjekket :-(

Men de 2 andre indtastninger får jeg denne fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] You tried to execute a query that does not include the specified expression 'spillerid' as part of an aggregate function.

/rangliste.asp, line 18
Avatar billede eagleeye Praktikant
17. november 2003 - 22:22 #8
ok så hedder deb spilleid uden _ prøv denne SQL så:

set rs = conn.execute ("SELECT Sum(score) AS SumTalFelt1, Sum(indgange) AS [SumTalFelt2],navn,spillerid from spillerresult group by navn, spillerid  order by Sum(score)/Sum(indgange) desc")
Avatar billede eagleeye Praktikant
17. november 2003 - 22:24 #9
Samt at rette hvor du udskriver fra rs sådan det er uden _:
rs("spiller_id")  -->  rs("spillerid")
Avatar billede dtm Nybegynder
17. november 2003 - 22:26 #10
tusind mange gange tak!! Det virker nu.....

Det kan være at du kan fortælle mig, hvorfor man skriver de kolonne-navne inden "FROM spilleresult"..... Det kan jeg nemlig ikke se det logiske i....
Avatar billede eagleeye Praktikant
17. november 2003 - 22:30 #11
Jeg vil mere side man skrive dem efter SELET.
Så man skrive de kolonne navne man har behov for efter SELECT:

"SELECT navn, spillerid FROM tabelnavn"

Alternativt kan man skrive en * som hendter alle kolonner ud: "SELECT * FROM tabelnavn"

DOG er det ikke muligt at bruge * når man bruger en  aggregate function som er sum, count, max, min med flere, eller hvis man bruger Group by til at grupere posterne. Du kan evt kigge mere på denne side: http://www.w3schools.com/sql/ som er ganske godt til lige at få fat i syntaxen for SQL sætninger.
Avatar billede dtm Nybegynder
17. november 2003 - 22:33 #12
ok, jeg takker i hvert fald :-)
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