I SQL Server 2008 kunne du scripte din Goo.Goo-tabel ud i SQL Server Mgmt studio og bede den også oprette et script til at indsætte alle data ved at bruge T-SQL INSERT
udsagn. Gå til Objekt Explorer, højreklik på databasen, vælg "Opgaver> Generer scripts", vælg den tabel, du vil generere dataindsæt-sætningerne for, og sørg for at bruge denne mulighed her:
Disse kunne derefter køres på den anden server for at indsætte tabelindholdet. I dette tilfælde skal du dog selv klare at indsætte mulige eksisterende rækker.
På den anden side, hvis begge servere er på det samme netværk, kan du bare bruge "Linked Server"-funktionen og linke kildeserveren til målserveren og derefter bruge SQL Server 2008 MERGE-sætningen til at importere alle data fra kilden srevers tabel ind i målserveren.
I Objekt Explorer, gå til "Serverobjekter", derefter "Linkede servere", højreklik og "Tilføj ny linket server" for at etablere en forbindelse mellem de to servere:
Når serverne er forbundet, vil en simpel MERGE-sætning (ny i SQL Server 2008) give dig mulighed for at flette dataene fra disse to tabeller:
MERGE
INTO Goo.Goo as Target
USING Foo.Foo.dbo.Foo as Source
ON Source.ID = Target.ID
WHEN NOT MATCHED THEN
INSERT (field1, field2, field3)
VALUES (source.field1, source.field2, source.field3)
WHEN MATCHED THEN
-- do nothing
;
Læs mere om den nye MERGE-erklæring her:
- http://www.builderau.com.au/program/sqlserver/soa/Using-SQL-Server-2008-s-MERGE-statement/0,339028455,339283059,00.htm
- http://www.sqlservercentral.com/articles/Advanced+Querying /3122/
eller i SQL Server 2008 Books Online.
Marc