29. juni 2010 - 11:34Der er
5 kommentarer og 1 løsning
Kopiere post fra tabel til tabel
Jeg har brug for at opdatere alle værdier i en enkelt post i en tabel fra en post i en anden tabel, som indeholder kolonner med de samme navne. Tabellen, som skal opdateres rummer også andre kolonner inde mellem de kolonner, der skal opdateres. Da der er tale om over 250 kolonner, vil jeg nødigt ud i at skulle skrive en update, hvor jeg angiver opdateringerne en ad gangen. Er der en måde, hvorpå jeg ud fra sammenligning af kolonnenavne kan opdatere en post i tabel X med løbenummer xx ud fra en post i tabel Y, som også rummer en post med løbenummer xx? Løbenummeret er unikt.
Ligger tabellerne på samme server eller distribueret ud? Er det kun et engangsjob? Er der krav til oppetid imens? Hvor mange rækker drejer denne update sig om?
En tabel med over 250? Hvad indeholder den? Taler vi DW?
Tabellerne ligger i samme database. Der er tale om en med originaldata, som der absolut ikke skal røres ved, og en med fejlrettede og udbyggede data, hvorfra jeg desværre er kommet til at slette en forkert post, som jeg nu skal genoprette.
Det er derfor et engangsjob. P.t. er der ikke andre brugere på databasen end mig, og jeg skal ikke bruge den mere i et par uger. Men hvis du med oppetid mener på hele serveren, så er jeg ret sikker på, at jeg ikke bliver populær på at lægge en af kommunens servere ned ret længe ad gangen.
Det er kun en række, hvor data skal kopieres fra den ene tabel til den anden. Til gengæld er det størstedelen af de mere end 250 kolonner (de fleste af typen 'float'), som skal opdateres.
insert into dinKopiTabel(field1, field2, field3....) select * from dinOrigTabel where Id = denIdduMangler... eller where id not(select id from dinKopiTabel)
Måden du henter samtlige kolonnenavne ud på.. og det skal du jo gøre på dinOrigTabel er ved at åbne object explorer... altså den hvor du kan se hvilke tabeller osv der ligger i din database, fold din dinOrigTabel ud og tag fat i mappen Columns og træk ind på editorområdet.
hehe... der er ikke så mange der lige kender den med mappen :) God at have i baghånden til adHoc opgaver.
Synes godt om
Ny brugerNybegynder
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.