Avatar billede jobless Nybegynder
21. april 2003 - 19:26 Der er 4 kommentarer og
1 løsning

Kopier poster mellem tabel, men tilføj ekstra ID

Hej.

Jeg kopierer nogle poster ml. 2 tabeller med:
INSERT INTO tabel2 SELECT tabel1.* FROM tabel1;

Tabellerne er ens(struktur), bortset fra at der i tabel 2 er et ekstra felt, som skal indeholde en reference.
Nu vil jeg gerne have tilføjet den ekstra reference samtidigt med kopieringen, altså: kopier en/flere poster fra tabel1 over i tabel2 samt tilføj et defineret tal i tabel2.ID (kun udfor de kopierede poster).

Jeg kan selvf. godt løbe posterne igennem og indsætte dem via DAO, men det er lidt besværligt (specielt hvis tabellerne bliver ændret), så derfor søger jeg en mulig sql-løsning.

MVH

JoBless
Avatar billede arne_v Ekspert
21. april 2003 - 20:14 #1
INSERT INTO tabel2 SELECT a,b,c,123 FROM tabel1;

skulle tage felterne a,b og c fra tabel1 til de første 3 felter
i tabel2 og 123 til det fjerde felt.
Avatar billede arne_v Ekspert
21. april 2003 - 20:15 #2
Eller har jeg misforstået hvad du vil ?
Avatar billede jobless Nybegynder
21. april 2003 - 20:23 #3
Jeg troer at det er det rigtige spor, jeg havde bare håbet at man kunne bruge * og så definere det sidste felt, således at hvis jeg f.eks. tilføjer et felt i begge tabeller, er det ikke nødvendigt at ændre sql'en.

Jeg tester dit foreslag......
Avatar billede arne_v Ekspert
21. april 2003 - 20:28 #4
Det er da også muligt at:

INSERT INTO tabel2 SELECT *,123 FROM tabel1;

virker, men jeg har aldrig prøvet.
Avatar billede jobless Nybegynder
21. april 2003 - 21:18 #5
Med lidt rettelse virker det:

INSERT INTO tabel2 ( EkstraFelt ) SELECT *, 123 FROM tabel1;

Tak for hjælpen
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