Avatar billede mikkelk Nybegynder
21. juli 2006 - 08:51 Der er 11 kommentarer og
1 løsning

Dataoverførsel, DTS-pakker og relationer

Jeg står og skal lave en stor dataoverførsel mellem to forskellige databaser. De to databaser ligner hinanden og indeholder stort set samme typer af data, men opbygningen og relationerne er meget forskellig.

Jeg har lavet en mapning af databaserne og har nogenlunde styr på hvilke data der skal hvorhen - men hvordan skal jeg nu få dem flyttet. Min første tanke var at skrive et VB eller C# program der løber data igennem og hen ad vejen flytter data og sikrer oprettelse af de korrekte relationer mellem data. Men det kan jo meget nemt blive et tungt program når flere millioner records skal loopes igennem og flyttes. Så jeg er begyndt at kigge lidt på DTS, men mangler lidt hjælp til at komme igang - kan i hjælpe mig?
Mest af alt mangler jeg hjælp til hvordan man (smartest) opbygger sine DTS-pakker når tabellerne ikke er ens og man skal sikre at relationerne mellem ID-felter undervejs bliver oprettet korrekt?

Håber i kan hjælpe mig både med konkrete eksempler og links til lidt læsestof.

MVH MIkkel
Avatar billede dr_chaos Nybegynder
21. juli 2006 - 08:56 #1
Der findes programmer som kan gøre det for dig.
Personligt foretrækker jeg
SQL Compare
www.redgate.com

eller

SQL Delta

www.sqldelta.com


De kan sammenligne data og strukturer af databaser og synkroniserer.
Avatar billede dr_chaos Nybegynder
21. juli 2006 - 09:00 #2
Begge programmer kan prøves i 14 dage gratis.
Avatar billede mikkelk Nybegynder
21. juli 2006 - 09:00 #3
dr_chaos -> Det duer ikke, da det skal køres adskillige gange af folk der ikke kender til databaser. De skal således helst blot kunne afvikle DTS-pakkerne, eller starte et program der kører det hele igennem. Desuden tvivler jeg på at de to programmer(har faktisk haft kigget lidt på SQL Compare tidligere) er i stand til at flytte data og skabe de rigtige relationer mellem to databaser der er så forskelligt opbygget. Husk på at de ikke blot skal synkroniseres. Jeg skal have kopieret data fra det ene system til det andet - uden at ændre på opbygningen af nogen af systemerne.
Avatar billede dr_chaos Nybegynder
21. juli 2006 - 09:14 #4
Det kan jeg godt se.
Tror desværre ikke at jeg kan hjælpe så :(
Avatar billede mikkelk Nybegynder
21. juli 2006 - 09:18 #5
Ærgeligt, så må vi bare håbe at der er andre der kan :-)
Men tak for dit bud.
Avatar billede dr_chaos Nybegynder
21. juli 2006 - 09:22 #6
ja måske ldanielsen eller arne v.
Avatar billede lorentsnv Nybegynder
21. juli 2006 - 11:43 #7
Du finder en røkke artikler om DTS her, samt hos Microsoft (msdn.micorosft.com)(.

I DTS kan du grafisk trække sourc felt over på destinatino felt, hvis felter i destination kommer fra samme source tabel. Hvis det ikke gør, kan du vurdere at lave en sql som giver dig source data som ligner på destination data.

DTS vil forsøge at lave mapning selv mellem source og target, hvis felt navnenen er identiske på source og target. Hvis de ikke er det, må du selv lave arbejdet.
Avatar billede lorentsnv Nybegynder
21. juli 2006 - 11:44 #8
Unskuld, jeg glemte at give linken til artik´ler:
http://www.databasejournal.com/features/mssql/archives.php
Avatar billede lorentsnv Nybegynder
21. juli 2006 - 11:48 #9
Kort fortalt, skal du i DTS definere to datasources (connections), en til kilde og en til target. Når du har lvaet disse to, kan du markere begge to, højreklikke, og vælge Transform Data Task. Her definerer du hvordan data skal flyttes fra den ene tabel til den anden.

Du finder informationer om dette også i SQL Server Books Online, og masser af informationer ved at søge på SQL Server DTS på google.
Avatar billede mikkelk Nybegynder
21. juli 2006 - 17:20 #10
Mit hovedproblem er at sikre at relationerne bliver korrekte, hvilket jeg har lidt svært ved at gennemskue hvordan jeg gør med DTS. Som sagt er opbygningen af databaserne ikke ens. Nogle data fra én tabel skal splittes og smides ind i 2 eller 3 forskellige tabeller og andre datatabeller skal samles. Så det er et lidt kompliceret projekt og kan som sagt ikke helt gennemskue hvordan jeg får oprettet de korrekte relationer i destinationsdatabasen.
Avatar billede mikkelk Nybegynder
23. juli 2006 - 16:07 #11
Ingen der kan hjælpe med det?
Avatar billede mikkelk Nybegynder
24. juli 2006 - 21:41 #12
Løsningen på relationer osv. er selvfølgelig blot at benytte lookups... doh!
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
Computerworld tilbyder specialiserede kurser i database-management

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