Avatar billede mecenor Nybegynder
21. juni 2004 - 21:09 Der er 3 kommentarer og
1 løsning

Kæde søgeresultat sammen fra 2 tabeller

Hej, jeg er stødt ind i et problem med at kæde 2 tabeller fra samme database sammen.
Det er i forbindelse med en søgefunktion til en vinside: der søges på vin-navn (og drue). Fra tabellen Vine skal tallet under ’hus’ erstattes med et husnavn: tallet er det tilsvarende id fra tabellen Huse. I.e. i søgeresultatet skal der stå ”vin-navn”(virker) og så ”fra hus-navnet”(og ikke tallet fra Vine.hus – p.t. står der intet med variablen ’husnavn’).
Det er første gang jeg leger med databaser og indtil videre er det gået fint med trail and error metoden. Men jeg har rodet rundt i det her al for meget og kommer ikke videre...
Kodestump:

' Hent huse
call dbstart("SELECT * FROM huse ORDER BY land, navn")

while not rs.eof

    hus(i1,1) = rs("id")
    hus(i1,2) = rs("navn")
   
    if int(rs("id")) = int(vin(i1,4)) then
        husnavn = rs("navn")
    end if
   
    rs.movenext
wend

call dbstop()
       
        call dbstart("SELECT * FROM vine WHERE navn LIKE '%" & felt & "%' or drue LIKE '%" & felt & "%' ORDER BY hus, navn")
   
        count = 0
       
        if rs.eof then
        response.write "<strong>0 resultater - se hjælp nedenfor</strong>"
        end if
       
        Do While Not RS.EOF

        vin(i1,1) = rs("id")
        vin(i1,2) = rs("navn")
        vin(i1,3) = rs("pris")
        vin(i1,4) = rs("hus")
        vin(i1,5) = rs("drue")
           
        count = count + 1

        %>
   
    <%=count%>. <a href="vine/vine.asp?id=<%=vin(i1,1)%>"><%=vin(i1,2)%></a> fra <%=husnavn%>
<!-- ...der skrives ikke noget efter ’fra’ -->
    <br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Flaske pris: kr. <%=FormatNumber(vin(i1,3),2)%> - Druer: <%=vin(i1,5)%>
    <br>
    <br>
   
    <% rs.movenext
    Loop
   
    call dbstop()%>

Hvis der er uklarheder, så sig til og jeg skal prøve at forklare.
Hvis det hjælper at se databasen, så finder jeg et sted at ligge den op - bare sig til.

Mvh. Mec
Avatar billede hekla Nybegynder
21. juni 2004 - 22:59 #1
Jeg kan ikke se, hvad der er galt i din kode, men i stadet for at kalde fra tabellerne kan du i Access lave en forespørgsel med de felter som du skal bruge og kalde felterne fra forespørgslen i den kode:
call dbstart("SELECT * FROM MinForespørgsel WHERE navn LIKE '%" & felt & "%' or drue LIKE '%" & felt & "%' ORDER BY hus, navn")
Så slipper du for at skulle lave to kald i koden.
Avatar billede hekla Nybegynder
23. juni 2004 - 20:45 #2
Fandt du ud af det?
Avatar billede mecenor Nybegynder
24. juni 2004 - 11:27 #3
Ja! Mange tak for hjælpen Hekla.
Avatar billede hekla Nybegynder
24. juni 2004 - 19:51 #4
Tak for point :o)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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