04. maj 2009 - 11:51Der er
8 kommentarer og 2 løsninger
Kopier en linje til den samme table
Hej Eksperter
Jeg skal kopier en linje fra en table til den samme table.
Jeg kan ikke finde nogle komandoer hvor man kan gøre det direkte, men har fundet ud af at man kan kopier til en anden table og derefter sætte det ind igen.
INSERT INTO table2 SELECT * FROM table1 WHERE id=1
Mit problem er at når det så skal tilbage igen får det det samme Id som den gamle!
INSERT INTO aktiviteter_frie_felter_copy SELECT * FROM aktiviteter_frie_felter WHERE Id_Frie_felter=1;
Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
[MySQL][ODBC 3.51 Driver][mysqld-5.0.27-community-nt]Column count doesn't match value count at row 1
Så så den sådan ud: INSERT INTO aktiviteter_frie_felter_copy SELECT Id_Sub_Frie_felter, Id_Aktivitet, Type, Rate, Kontonr, Offentlig, Pris, Rabat, Startdato, Slutdato, Notat, Navn, Fast_antal, Min, Max, Select_type, Beskrivelse, Obligatorisk, Alder_start, Alder_slut, Oprettet_Id, Oprettet_Dato FROM aktiviteter_frie_felter WHERE Id_Frie_felter=1;
Det er fordi du jo selvfølgelig skal bruge dit idfelt for at lave filter, men måske skulle du bare lave en ekstra kolonne i din nr2 database hvor du indsætter FK(id fra din nr1 tabel)
Ved at skrive : INSERT INTO aktiviteter_frie_felter_copy SELECT Id_Sub_Frie_felter, Id_Aktivitet, Type, Rate, Kontonr, Offentlig, Pris, Rabat, Startdato, Slutdato, Notat, Navn, Fast_antal, Min, Max, Select_type, Beskrivelse, Obligatorisk, Alder_start, Alder_slut, Oprettet_Id, Oprettet_Dato FROM aktiviteter_frie_felter WHERE Id_Frie_felter=1;
Tror din statemnet at den også skal indsætte ID i din tabel nr 2
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.