/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Recordset er tomt
Fra : Rune Bjerregaard


Dato : 07-10-02 22:03

Hejsa, jeg er ikke sikker på om dette spm hører hjemme her eller i en
database-gruppe.

Når jeg udfører nedenstående query i enten MySQL-Front elller phpmyAdmin
giver den det ønskede resultat. Men ligeså snart jeg lægger det ind i mit
ASP-script, og opretter et resultset, kommer det ud tomt.

Målet er i dette tilfælde at vise de 10 spillere som er valgt flest gange i
mit drømmeligaspil. Jeg ved ikke om det er count eller join eller noget
andet der går galt. Jeg får netop ingen fejlmeddelelse, bare et tomt
recordset ud. Hvis jeg forsøger at skrive uden at teste på EOF får jeg fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Driver does not support this parameter

ASP-snip
****
<%
strSQL = "SELECT sp.spillerfornavn, sp.spillerefternavn, sp.Klub,
COUNT(se.spillerID) as Antal FROM spillere sp LEFT JOIN selections se ON
sp.spillerID=se.spillerID where gruppe>0 GROUP BY sp.spillerID ORDER BY
Antal DESC limit 0,10"

Set rsPlayer = cnn.Execute(strSQL)
Session("sql") = strSQL

do while not rsPlayer.EOF
%>
<%=rsPlayer("Antal")%> - <%=rsPlayer("spillerfornavn")%>
<%=rsPlayer("spillerefternavn")%>, <%=rsPlayer("Klub")%><br>
<%
rsPlayer.MoveNext
loop
%>
***
ASP-snip slut

Løkken kommer aldrig igang, hvilket jeg efter min bedste overbevisning tror
må skyldes at mit resultset er tomt.

Jeg har i nogle omgange prøvet at få svar på eksperten uden held. Spm. kan
læses her:
http://www.eksperten.dk/spm/263314
http://www.eksperten.dk/spm/263460

Jeg skal på ferie fra i nat, men kan tjekke gruppen et par gange den næste
uge - Så der er masser af tid til at fundere over mit underlige problem.
Håber der er nogen der kan genkende problemstillingen.?


Med venlig hilsen

Rune



 
 
Rune B (08-10-2002)
Kommentar
Fra : Rune B


Dato : 08-10-02 16:12


"Rune Bjerregaard" <Rune(remove-for-reply)@Direkte.org> wrote:

> Hejsa, jeg er ikke sikker på om dette spm hører hjemme her eller i en
> database-gruppe.
>
> Når jeg udfører nedenstående query i enten MySQL-Front elller phpmyAdmin
> giver den det ønskede resultat. Men ligeså snart jeg lægger det ind i mit
> ASP-script, og opretter et resultset, kommer det ud tomt.
>
> Målet er i dette tilfælde at vise de 10 spillere som er valgt flest gange i
> mit drømmeligaspil. Jeg ved ikke om det er count eller join eller noget
> andet der går galt. Jeg får netop ingen fejlmeddelelse, bare et tomt
> recordset ud. Hvis jeg forsøger at skrive uden at teste på EOF får jeg fejl:
>
> Microsoft OLE DB Provider for ODBC Drivers error '80004005'
> [Microsoft][ODBC Driver Manager] Driver does not support this parameter
>
> ASP-snip
> ****
> <%
> strSQL = "SELECT sp.spillerfornavn, sp.spillerefternavn, sp.Klub,
> COUNT(se.spillerID) as Antal FROM spillere sp LEFT JOIN selections se ON
> sp.spillerID=se.spillerID where gruppe>0 GROUP BY sp.spillerID ORDER BY
> Antal DESC limit 0,10"

Jeg kender ikke MySQL indgående, men du kan som regel ikke både tælle op
(count) og SELECT'e i samme sætning uden også at have felterne med i en GROUP
BY...

Når det er sagt, vil desuden opnå en væsenligt bedre performance ved at pakke
dit loop ind writes á la:

<%
....
while not rsPlayer.EOF
With Response
.Write(rsPlayer(""Antal"") & " - ")
.Write(rsPlayer(""spillerfornavn"") & " ")
.Write(rsPlayer(""spillerefternavn"") & ", ")
.Write(rsPlayer(""Klub"") & "<br>")
End With
rsPlayer.MoveNext
wend
%>

Rune




Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste