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

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Hjælp til SQL forespørgsel
Fra : Neo


Dato : 30-07-06 14:45

Hejsa alle

jeg har 2 tabeller i en access database, Tabel1 og Tabel2

i Tabel1 har jeg følgende felter

BrugerID
Navn
Adresse

I Tabel2 har jeg bl.a. følgende felter

BrugerID
Navn
Adresse

Alle Navne og adresser samt BrugerID er indtastet i Tabel1

Kun BrugerID er indtastet i Tabel2

Hvordan skal en sql forespørgsel se ud for at opdatere tabel2 med data fra
tabel1, med brugerID rom reference ?

Jeg benytter VB6

Håber på lidt hjælp, på forhånd tak

Mvh Neo




 
 
Per Koch (31-07-2006)
Kommentar
Fra : Per Koch


Dato : 31-07-06 05:22

Måske du kan bruge dette:
Lav en forespørgsel:
SELECT t1.BrugerID,t1.Navn.t1.Adresse,t2.Data1,t2.Data2,t2.Data3 o.s.v.
FROM Table1 AS t1 INNER JOIN Table2 AS t2 ON t1.BrugerID=t2.BrugerID

Hvis du laver tabellen som en tabeloprettelses-forespørgsel, får du lavet en
ny tabel med de ønskede data.
Efterfølgende kan du så omdøbe Tabel2 til et andet navn og dernæst omdøbe
den nye tabel til at hedde Tabel2.
Nu skal den viste SQL-sætningen selvfølgelig tilrettes med samme rækkefølge
af datafelter, som du anvender i Tabel2


"Neo" <someone@somedomain.invalid> skrev i en meddelelse
news:44ccb7e1$0$14029$edfadb0f@dread15.news.tele.dk...
> Hejsa alle
>
> jeg har 2 tabeller i en access database, Tabel1 og Tabel2
>
> i Tabel1 har jeg følgende felter
>
> BrugerID
> Navn
> Adresse
>
> I Tabel2 har jeg bl.a. følgende felter
>
> BrugerID
> Navn
> Adresse
>
> Alle Navne og adresser samt BrugerID er indtastet i Tabel1
>
> Kun BrugerID er indtastet i Tabel2
>
> Hvordan skal en sql forespørgsel se ud for at opdatere tabel2 med data fra
> tabel1, med brugerID rom reference ?
>
> Jeg benytter VB6
>
> Håber på lidt hjælp, på forhånd tak
>
> Mvh Neo
>
>
>



Kaj Julius (26-08-2006)
Kommentar
Fra : Kaj Julius


Dato : 26-08-06 12:08


"Neo" <someone@somedomain.invalid> skrev i en meddelelse
news:44ccb7e1$0$14029$edfadb0f@dread15.news.tele.dk...
> Hejsa alle
>
> jeg har 2 tabeller i en access database, Tabel1 og Tabel2
>
> i Tabel1 har jeg følgende felter
>
> BrugerID
> Navn
> Adresse
>
> I Tabel2 har jeg bl.a. følgende felter
>
> BrugerID
> Navn
> Adresse
>
> Alle Navne og adresser samt BrugerID er indtastet i Tabel1
>
> Kun BrugerID er indtastet i Tabel2
>
> Hvordan skal en sql forespørgsel se ud for at opdatere tabel2 med data fra
> tabel1, med brugerID rom reference ?
>
> Jeg benytter VB6
>
> Håber på lidt hjælp, på forhånd tak
>
> Mvh Neo
>
>
>

Det kommer an på, hvilken database du benytter. MySQL tillader f.eks. denne
her:

UPDATE tabel1, tabel2 SET tabel2.navn=tabel1.navn,
tabel2.adresse=tabel1.adresse WHERE tabel1.id=tabel2.id

men det er langt fra alle databaser der tillader sådan en syntax (som jo
ligner den man ville bruge i en SELECT). Den er vist ikke helt i
overensstemmelse med de officielle SQL standarder

Nogle gange er man nødt til at bruge en syntax som denne:

UPDATE tabel2
SET navn = (SELECT navn FROM tabel1 WHERE id=tabel2.id),
adresse = (SELECT adresse FROM tabel1 WHERE id=tabel2.id)
WHERE EXISTS (SELECT * FROM tabel1 WHERE id=tabel2.id)

Where delen er måske ikke nødvendig. Den sikrer bare, at man ikke forsøger
at opdatere rækker, som ikke findes i tabel1. Hvis du er helt sikker på, at
der ikke eksisterer "nye" id i tabel2, er den ikke nødvendig.



Søg
Reklame
Statistik
Spørgsmål : 177429
Tips : 31962
Nyheder : 719565
Indlæg : 6407948
Brugere : 218878

Månedens bedste
Årets bedste
Sidste års bedste