Avatar billede Jedi Senpei Juniormester
17. december 2018 - 16:53 Der er 1 løsning

Hvordan trækker jegdata ud af en tabel og placerer dem i andre tabeller med de rigtige relationer

Hej Folk

Så er jeg tilbage med endnu et MS Access problem, som jeg håber i kan hjælpe mig med at løse. Jeg håber jeg har forklaret det på en måde som er til at forstå. Ellers så gør jeg mig gerne umage for at gøre det endnu tydeligere.

Jeg har en tabel som hedder "Tbl_Data" og indholder en masse data som vist nedenfor:

Tbl_Data
------------------------------------
ID; Fase;  Tegningsnr;
1    30      UOS-83075
2    30      UOS-83077
3    35      UOS-83077
4    35      UOS-83078
5    35      UOS-83079
.        .
.        .
---------------------------------
Tabellen indeholder mange rækker men fælles er, at "Fase" værdien enten er 30 eller 35 og "Tegningsnr" værdien kan have alle mulige værdier. Tabellen indeholder også en masse andet data, men jeg har kun vist dem der har betydning for mit problem.

Jeg har derudover en tabel kaldet "Tbl_Fase". Denne indholder et udtræk af "Tbl_Data" fra feltet "Fase", men kun med de unikke værdier. I dette tilfælde er det 30 og 35, som vist nedenfor:

Tbl_fase:
-------------------------------
Fase_ID; Fase
2            30
4            35
-------------------------------

Jeg har desuden en tredje tabel "Tbl_tegning" i en-mange relation med "Tbl_Fase". Dvs. Tbl_Fase (EN) --> Tbl_Tegning (Mange).

Tbl_Tegning
-------------------------------
Tegning_ID; Fase_ID; Tegningsnr.
-------------------------------
Denne tabel er ikke udfyldt endnu, og det er det jeg gerne vil have jeres hjælp til, fordi jeg ved ikke hvordan jeg skal gøre det.

"Tbl_tegning" skal udfyldes ved at trække værdierne i "Tegningsnr" ud af "Tbl_Data", således at der relation mellem "Tegningnr" i "Tbl_Tegning" og "Fase" i "Tbl_Fase". Jeg forestiller mig at den bliver udfyldt som vist herunder:

Tbl_Tegning
-------------------------------
Tegning_ID; Fase_ID; Tegningsnr.
1                    2          UOS-83075
2                    2          UOS-83077
3                    4          UOS-83077
4                    4          UOS-83078
5                    4          UOS-83079
-------------------------------

Hvordan gør jeg det?
Jeg har forsøgt mig med forskellige SQL kommandoer og VBA kodestykker, men jeg har svært ved at se hvordan det skal gøres. Jeg er ikke så rutineret i Access endnu, så i må gerne skære det ud i pap, hvis i gider. Håber at nogen kan hjælpe.

Med venlig hilsen
Senpei
Avatar billede fdata Forsker
17. december 2018 - 18:23 #1
Opret en forespørgsel
Klik på SQL nede i højre hjørne
Indsæt nedenstående:

INSERT INTO Tbl_Tegning ( Tegning_ID, Fase_ID, Tegningsnr )
SELECT Tbl_Data.ID, Tbl_fase.Fase_ID, Tbl_Data.Tegningsnr
FROM Tbl_Data INNER JOIN Tbl_fase ON Tbl_Data.Fase = Tbl_fase.Fase;
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

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