Avatar billede toppus Nybegynder
15. juni 2001 - 00:00 Der er 12 kommentarer og
1 løsning

tilføj felter

Jeg har to tabeler med flere felter, i den ene er der vejnavn, kommune og et par andre. I den anden er der de samme felter + et felt med bynavn.
I de to tabeler er der IKKE en nøgle da der kan være samme vejnavn i forskellige kommuner, og det samme gør sig gældende i den anden tabel.
Men i tabel nr 2 findes BYNAVN, det kunne jeg godt tænke mig at få overført til tabel 1, men så det stadig passer med komunne og vejnavn. HVORDAN fa... kan det lade sig gøre, jeg har nu brugt TIMER, men uden held
Avatar billede toppus Nybegynder
15. juni 2001 - 00:08 #1
p.s bruger access2000
Avatar billede horus Nybegynder
15. juni 2001 - 00:48 #2
Kan du ikke lave en opdateringsforespørgsel der overfører bynavnet til den anden tabel ? Du skal så selvfølgelig oprette et bynavn felt i den anden tabel, og så laver du en opdateringsforespørgsel der opdaterer feltet i den \"nye\" tabel så det stemmer overens med den gamle tabel. Du behøver ikke nogen nøgle, du kan bare definere de felter der er ens i begge tabeller, f.eks. postnummer hvis du har det....

Jeg vil meget gerne hjælpe dig med forespørgslen - du kan sende tabellerne til llobel@huskdet.nu hvis du vil....

Held og lykke

Horus
www.HuskDet.Nu - så glemmer du aldrig...

Avatar billede kbdesign Nybegynder
15. juni 2001 - 00:58 #3
Du kan også lave en tabel med postdistrikter, hvor samtlige danske postnumre og tilhørende bynavne er skrevet ind.
Sådan en findes på http://activeserverpages.dk/download/default.asp?mode=download&id=183

Der skal du bare skære unødvendige data fra(såsom grønland og færøernes postnumre), hvis du føler dette nødvendigt. Dette er dog rimelig let da du bare skal fjerne alle poster med værdierne 2 eller 3 som land. Du skal også slette felterne med vejnavn og firmanavn.
Dette kan du selvfølgelig gøre efter behag.
Avatar billede kbdesign Nybegynder
15. juni 2001 - 00:59 #4
Glemte lige at skrive at du så derefter kan lave en relation til postnumrene i postdistrikt tabellen.
Avatar billede toppus Nybegynder
15. juni 2001 - 02:03 #5
Ja horus, det er også lide det, men den skal jo kun gøre det på de poster der passer sammen, da post1i tabel1 ikke er li med post1 i tabel2, mangler lige det check at den KUN skal hvis det er samme vejnavn og kommune før den kan opdatere..
kbdesign: det er bynavne og ikke postdistrikt, jeg bruger.. Og ved at bruge relation (join) få jeg bare MANGE flere poster i en forspørgelse, da den tror at ALLE vejnavne, i kommune skal ha alle bynavne, selv om de ikke passer sammen.
Avatar billede kbdesign Nybegynder
15. juni 2001 - 02:10 #6
hmm... Tough one...

Jeg tror stadig jeg ville have valgt at give dem alle et postnr og så relatere til postdistrikt-tabellen. Men nu har du jo sikkert fået bygget en stor database op...

Men tror du ikke at der er nogen bynavne som ikke er oprettet i den hvor bynavnene står, som den anden skal bruge? Eller måske nogen kombinationer af vejnavne og kommuner? Hvis du forstår hvad jeg mener...
Avatar billede jimse Nybegynder
15. juni 2001 - 07:45 #7
Send en kopi, så kigger vi på det.
jimkat@mail.tele.dk
15. juni 2001 - 15:25 #8
Du opretter feltet By i [Tabel 1] (med samme datatype som i [Tabel 2])

Følgende SQL skulle gøre tricket:
UPDATE [Tabel 2]INNER JOIN [Tabel 1] ON [Tabel 2].Postnr = [Tabel 1].Postnr SET [Tabel 1].[By] = [Tabel 2].[By];

Du skal blot erstatte [Tabel 1] og [Tabel 2] med dine navne.

Forespørgslen joiner kun på Postnr, da dette burde være nok til at identificere bynavnet

/Thomas
15. juni 2001 - 15:27 #9
(...rettelse)

Ups, der var lige forsvundet et mellemrum. Sådan skal den se ud:
UPDATE [Tabel 2] INNER JOIN [Tabel 1] ON [Tabel 2].Postnr = [Tabel 1].Postnr SET [Tabel 1].[By] = [Tabel 2].[By];
Avatar billede toppus Nybegynder
15. juni 2001 - 16:07 #10
Bare lige for at gentage..:).
Jeg har ikke postnummer eller postdistrikt, og postdistrikt er IKKE nødvendigvis=bynavn, men en lille flække i postdistriket.
Jeg har KUN de to felter: Vejnavn og kommune, som er ens i tabelerne, ville \"bare\" gerne ha bynavn fra tabel 2 over i tabel 1, men ingen af tabelerne har en unik nøgle. Så den skal lave en kontrol af posten om de to felter er magen til posten i tabel 2 og først der indsætte bynavn, hvis der er korekt.
15. juni 2001 - 20:08 #11
Sorry....my bad! :o)

Hvad så med den her:
UPDATE Table1 INNER JOIN Table2 ON (Table1.Kommune = Table2.Kommune) AND (Table1.Vejnavn = Table2.Vejnavn) SET Table1.[By] = [Table2].[By];

Den sammenligner på kommune og vejnavn.

Eller er jeg helt galt på den igen?

/Thomas
Avatar billede toppus Nybegynder
16. juni 2001 - 01:23 #12
Thomas Kanon det virker :)
Mange tak for hjælpen

Bare lige et spørgsmål:
Hvad nu hvis jeg har 3 poster der ligner hinanden på vejvavn og kommune, så får de alle 3 samme bynavn (det er det jeg har bedt om),men kunne man inden lave et check at hvis der er et bynavn på posten, så skal den slette POSTEN i TABEL2 da jeg herved vil bruge den næste post i tabel2 med samme kriterier.
Fordi samme vejnavn og kommune, står i flere poster, da vejen kan gå gennem flere by\'er i kommunen.
16. juni 2001 - 11:35 #13
Hmm, jeg ville nok lave en forespørgsel som finder alle de poster, hvor der er mere end 2 forekomster. Og derefter slette dem, som skal slettes.
Der er en forespørgselsguide, som kan bruges til at finde dubletter - den skal dog nok lige modificeres til kun at vise med med mere end to forekomster istedet for én.
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