Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[Access2007] Records tabel kopiëren naar andere tabel

Pagina: 1
Acties:

Verwijderd

Topicstarter
Goedenavond,

Ik ben bezig met een Access database. Er zijn 2 tabellen:
- imp_0001 (5 velden die gekoppeld zijn aan een tekstbestand die uit de bron komen)
- tbl_0001 (17 velden, waarvan 5 uit het tekstbestand via imp_0001)

Ik wil dat als form_start wordt geopend dat automatisch de gegevens van imp_0001 worden toegevoegd aan tbl_0001. Om te voorkomen dat in de bron verwijderde gegevens worden toegevoegd wordt eerst alles gekopieerd naar tbl_0001_tijdelijk en verwijderd uit tbl_0001. Tot slot worden de oude gegevens uit tbl_0001 (nu in tbl_0001_tijdelijk) toegevoegd.

Ik doe dit als volgt:
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
'Tijdelijke tabel aanmaken
DoCmd.OpenQuery ("qry_create_tbl_0001_tijdelijk")
'Gegevens kopiëren van tbl_0001 naar tbl_0001_tijdelijk
DoCmd.OpenQuery ("qry_insert_tbl_0001_to_tbl_0001_tijdelijk")
'tbl_0001 legen
DoCmd.OpenQuery ("qry_delete_*_table_0001")
'tbl_0001 vullen met imp_0001 gegevens
DoCmd.OpenQuery ("qry_tbl_0001_vullen")
'Gegevens tbl_0001_tijdelijk terugzetten naar tbl_0001

'Tijdelijke tabel verwijderen
DoCmd.OpenQuery ("qry_drop_tbl_0001_tijdelijk")

Nu ontbreekt alleen het stuk (de query) om de gegevens uit de tijdelijke tabel terug te zetten in tbl_0001 bij het juiste id_number.

Ik heb dit geprobeerd met een update query maar ik krijg het tot nog toe niet voor elkaar.
update tbl_0001 set veld1 = tbl_0001_tijdelijk.veld 1 enz enz where tbl_0001.id_number = tbl_0001_tijdelijk.id_number

Dan geeft hij echter een handmatig invoerveld. Weet iemand hoe ik het wel voor elkaar kan krijgen en/of hoe het makkelijker kan (zonder tijdelijke tabel)?

[ Voor 16% gewijzigd door Verwijderd op 09-10-2008 19:57 ]


  • Witte
  • Registratie: Februari 2000
  • Laatst online: 15-10 13:46
volgens mij kan je het met 1 query:

code:
1
INSERT INTO doeltabel (veld1, veld2, veld3, veld4, veld5) SELECT veld1, veld2, veld3, veld4, veld5 FROM brontabel


en indien niet, dan snap ik je hele probleem niet.

Houdoe


Verwijderd

Topicstarter
Witte schreef op vrijdag 10 oktober 2008 @ 11:29:
volgens mij kan je het met 1 query:

code:
1
INSERT INTO doeltabel (veld1, veld2, veld3, veld4, veld5) SELECT veld1, veld2, veld3, veld4, veld5 FROM brontabel


en indien niet, dan snap ik je hele probleem niet.
Dat is niet wat ik zoek. Hij moet elk record updaten die voorkomt in de tabel_0001 zodat de gegevens van de overige 12 velden ook erin komen.

Dus het moet iets worden met update ... where veld1 = tabel_0001.veld1

Toch bedankt voor je antwoord! :)