Avatar billede nyrup Nybegynder
30. marts 2003 - 11:59 Der er 13 kommentarer og
1 løsning

Import af tekstfil, til db med indexfelt

Hej Eksperten

Jeg har en tekstfil med data, som jeg skal have smidt i en eksisterende database.

Problemet er, at første felt i databasen er et index, med fortløbende nummerering.
Hvordan får jeg dette til at passe, når feltet (selvfølgelig) ikke er i tekstfilen.
Jeg har prøvet at vælge spring over, i forbindelse med importen, men så vælger den nogle ekstremt store tal, og ikke blot de næste i rækkefølgen.
Avatar billede mugs Novice
30. marts 2003 - 12:05 #1
Kan du ikke importere til en temporær tabel, og derefter ved en tilføjelsesforespørgsel smide data over i den rigtige tabel?
Avatar billede terry Ekspert
30. marts 2003 - 12:11 #2
Not 100% sure I understand the problem!
You say that you are importing into an existing database, does the table exist also?
When you import the text file using the import wizard you can choose if the field is to be indexed.
Avatar billede nyrup Nybegynder
30. marts 2003 - 12:22 #3
mugs: Hvordan gør man det (jeg er novice på området)

terry: Yes the table exists, and contains data.
Avatar billede mugs Novice
30. marts 2003 - 12:29 #4
Taf en kopi af den rigtige tabel og slet index. Kald denne nye tabel f.eks temp. Importer hertil. Nu er data i Access men uden dit index.

Åbn db i databasevinduet > fanen forespørgsler > Ny > Designvisning > I vinduet hvor du vælger tabeller trækker du temp ind i forespørgslen > På menulinien > Forespørgsler > Tilføjelsesforespørgsel > Vælg derefter den rigtige tabel hvor data skal være  og luk > Træk derefter allle felter fra temp ned i forespørgslesgitteret og Access vil foreslå hvilke felter der skal tilføjes.

Sådan plejer jeg at gøre når jeg importerer fra Excel til Access, og det fungerer perfekt.

Hvis dit index er et autonummerfelt, kan du nulstille feltet ved at komprimere din db.
Avatar billede nyrup Nybegynder
30. marts 2003 - 12:36 #5
mugs - det vil jeg prøve.

Ja, index er et autonummerfelt, vil det sige, at jeg bare kan importere og springe index over, så jeg får en db. med meget høje indextal, og så komprimere den?
Avatar billede mugs Novice
30. marts 2003 - 12:44 #6
Lad os antage, at den højeste værdi i dit autonummerfelt er 100. Hvis du komprimerer nu vil det næste autonummer være 101. Der kan være "spring" i rækkefølgen hvis du har slettet nogle poster. Afhængig af om dit autonummerfelt har relationer til andre tabeller kan du:

Slette autonummer feltet og oprette det igen. Derved vil autonummerfeltet igen starte ved 1, og give posterne et fortløbende nummer.

Da index ikke findes i Word-filen importerer du bare uden til temp-tabellen i Access. Kør derefter din tilføjelsesforespørgsel og de nye data vil blive tilføjet med fortløbende autonumrer. Husk at du kan indsætte kriterier i tilføjelsesforespørgslen så du kun overfører bestemte data.
Avatar billede nyrup Nybegynder
30. marts 2003 - 15:01 #7
mugs: Måske er det mig, men når jeg prøver din forespørgsselsteknin, kan jeg ikke finde noget det hedder tilføjelsesforespørgsel.

Når jeg importerer og springer indeixfeltet over, så der kommer nogle storer tak, ændrer det ingenting selvom jeg vælger at komprimere tabellen
Avatar billede mugs Novice
30. marts 2003 - 15:05 #8
Hvis du lægger din e-mail strikker jeg lige nogle skærmdumps sammen.

Prøv at slette autonummerfeltet og opret det igen.
Avatar billede nyrup Nybegynder
30. marts 2003 - 15:08 #9
Takker nyrup(at)ofir.dk

Btw. Det er Access 2002 hvis det betyder noget
Avatar billede mugs Novice
30. marts 2003 - 15:29 #10
Sendt
Avatar billede nyrup Nybegynder
30. marts 2003 - 15:42 #11
Tak for vejledningen, nu fandt jeg da tilføjelsesforespørgslen, men ID feltet bliver stadig udfyldt med ID meget store tal.
Tabellen indeholder 4 poster nr. 1-4, de fire der bliver indast får: 453054272, 453054273, 453054274 og 453054275. Præcist det samme problem som da jeg valgte at importere og springe ID-feltet over.
Avatar billede mugs Novice
30. marts 2003 - 15:46 #12
Jeg antager, at feltet ID ligger i den tabel, der endelig skal modtage data og ikke i importtabellen.

Slet ID-feltet > Luk tabellen og sig ja til at gemme ændringer > Åbn den igen i designvisning > Opret ID-feltet igen > Luk og gem ændringer > Der skal nu være en fortløbende nummerering startende ved nr. 1.
Avatar billede nyrup Nybegynder
30. marts 2003 - 15:54 #13
Hurra, Hurra og så det lange HHHUUURRRRRRAAA

Det hjalp - tak for hjælpen
Avatar billede mugs Novice
30. marts 2003 - 15:59 #14
Tak for point.
Det lykkes som regel ved fælles hjælp. Men må jeg anbefale dig, altid at lade dine formularer få data fra en forespørgsel. Det gør din db langt mere fleksibel senere hen.
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