Avatar billede mecenor Nybegynder
03. juli 2004 - 02:22 Der er 6 kommentarer og
1 løsning

Trods SELECT DISTINCT vises gengangere

Det er meningen at en drue der trækkes fra en access db kun skal fremgå én gang med dette:

  call dbstart("SELECT DISTINCT drue FROM soegning ORDER BY drue")

Men listen der skrives er fuld af gengangere. Hvad er forkert?

Mvh. Mec
Avatar billede proaccess Nybegynder
03. juli 2004 - 06:35 #1
Det burde ikke forekomme, er du HELT sikker på at det er DEN SAMME drue...?
Her tænker jeg på stavefejl, forskel i mellemrum m.v.
Avatar billede mecenor Nybegynder
03. juli 2004 - 09:53 #2
Ja, har prøvet at slette ex de 9 gange druen Barbera forekommer i db, kopiere navnet ind igen, så alle skulle være ens - og stadig vises Barbera 9 gange.
Det er måske måden jeg kalder druerne på?:

call dbstart("SELECT DISTINCT drue FROM soegning ORDER BY drue")

i1 = 0
while not rs.eof
    i1 = i1 + 1
    drue(i1,1) = RS("drue")
    rs.movenext
wend
    drue(0,0) = i1
call dbstop()

og så:

<%
                for i1 = 1 to drue(0,0)
                %>
                <tr valign="top">
                    <td class="p">
                        &nbsp;&nbsp;&nbsp;&nbsp;<%=drue(i1,1)%>
                    </td>
                  </tr>
                <%
                next
                %>
Avatar billede erikjacobsen Ekspert
03. juli 2004 - 10:05 #3
Det skal selvfølgelig virke. Så der er noget andet galt.

Er du sikker på du bruger den rigtige "RS" ?
Hvilket databasesystem bruger du?
Avatar billede erikjacobsen Ekspert
03. juli 2004 - 10:06 #4
Og, ikke mindst: hvilken type er feltet "drue" ?
Avatar billede mecenor Nybegynder
03. juli 2004 - 10:29 #5
Feltet drue var memo(engelsk access) - og ændret til text virker det! Nu kun én barbera :)
Men hvorfor dur memo ikke? Nægter den at sammenligne potentielt store felter, selvom der kun er lidt tekst i dem?

Tak for hjælpen Erik, point klar til affyring.
Avatar billede erikjacobsen Ekspert
03. juli 2004 - 10:43 #6
Memoer er "for store" til at man kan lave tidskrævende operationer på dem, bortset
fra at det afhænger af databasesystem og drivere, for nogle gange kan man.

Men du vil altid kunne gøre det med de "simple" typer.

Ingen point tak, jeg samler slet ikke på point.
Avatar billede mecenor Nybegynder
03. juli 2004 - 10:58 #7
Tak for forklaring
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
Computerworld tilbyder specialiserede kurser i database-management

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