Avatar billede hojben Novice
29. januar 2002 - 13:39 Der er 5 kommentarer og
1 løsning

hente data fra enten....

Mit spørgsmål er lidt blandet..

Jeg vil fx gerne hente data fra enten en forespørgsel jeg har lavet i en access database ELLER hente data fra 2 tabeller i access hvor tabel 1 har en relation til tabel 2.

Scene: En kundedatabase
Tabel 1 har informationer om kunden incl. postnummer.
Tabel 2 har postnummer + bynavn

Jeg skal ha hevet kundeinformationerne ud incl. bynavnet som kun optræder i tabel 2.

How so ?
Avatar billede cultx Nybegynder
29. januar 2002 - 14:04 #1
Den SQL-steng du skal bruge, skal nok se nogenlunde ud som denne:

RS.Open "SELECT Table1.KundeNavn, Table2.AdressePostnr, Table1.KundeID, Table1.KundePostnr, Table1.KundeTlf, Table2.AdresseCity, Table2.AdresseLand FROM Table1 INNER JOIN Table2 ON Table1.KundePostnr = Table2.AdressePostnr;", Connection

Håber det kan bruges???
Avatar billede hojben Novice
29. januar 2002 - 14:23 #2
Okay... Jeg smider lige koden: Det er en fritekstsøgning på navnefeltet.
Jeg har en anden tabel som indeholder postnr og bynavn og det er så bynavnet jeg også skal ha smidt ud nederst..

<% Response.Buffer = True %>
<html><head>
<title>~~~ Kundeoplysninger ~~~</title>
</head><body>

<%
strKeyword = Trim(Request.Form("navn"))

' Opbygger en dynamisk SQL streng
strSQL = "SELECT * FROM Kunder WHERE"

strSQL = strSQL & " (Navn = '%" & strKeyword & "%')"

' Skaber DSNLess forbindelse til DBen
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("/database.mdb")
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN

' Skaber et recordset udfra SQL strengen
Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
    ' Hvis der er fundet poster på søgningen
    Response.Write "<p>Søgeresultat</p>"
    Response.Write "<table border=1>"
    Response.Write "<tr><th>Navn</th><th>Adresse</th><th>Postnr</th></tr>"
    Do While Not rs.EOF
        Response.Write "<tr><td><a href=""resultat.asp"">" & rs("Navn") & "</td><td></a>" & rs("adresse") & "</td><td>" & rs("postnr") & "</td></tr>"
        rs.MoveNext
    Loop
    Response.Write "</table>"
Else
    ' Hvis der ikke er fundet poster på søgningen
    Response.Write "<p>Der er ikke fundet noget på denne søgning</p>"
End If

' Rydder op efter os
myConn.Close
Set myConn = Nothing
%>
</body>
</html>
Avatar billede cultx Nybegynder
29. januar 2002 - 16:04 #3
Kan du ikke lige lave en kort opridsning af din DB, så jeg kan skrive koden med de rigtige tabeller... ;-)
Avatar billede hojben Novice
29. januar 2002 - 17:24 #4
tabel1:
Tabelnavn: Kunder
Felter: [Primærnøgle]Kunde-ID, Navn, Adresse, postnr
-------------------------
Tabel2:
Tabelnavn: Postnumre
Felter: [Primærnøgle]Postnummer, By
-------------------------
Er sat op så at [Kunder.postnr] er linket sammen med [Postnumre.Postnummer] i relations.
Avatar billede webbe Nybegynder
30. januar 2002 - 12:25 #5
Id = request.querystring("id")

sql = "SELECT * FROM Kunder,Postnumre WHERE ((Kunder.Kunde-id="&Id&") AND (Postnumre.Postnummer=Kunder.Postnr))"
Set rs = Connect.Execute(sql)
Avatar billede hojben Novice
30. januar 2002 - 14:29 #6
Lukker dette sp.. intet kunne hjælpe... smider det på activeserverpages.dk istedet...
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