Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

importare i dati da una tabella a un'altra tabella

In SQL Server 2008, è possibile eseguire lo script della tabella Goo.Goo in SQL Server Mgmt Studio e dirgli di creare anche uno script per inserire tutti i dati utilizzando T-SQL INSERT dichiarazioni. Vai in Esplora oggetti, fai clic con il pulsante destro del mouse sul database, seleziona "Attività> Genera script", scegli la tabella per cui desideri generare le istruzioni di inserimento dati e assicurati di utilizzare questa opzione qui:

Questi potrebbero quindi essere eseguiti sull'altro server per inserire il contenuto della tabella. In questo caso, tuttavia, dovresti occuparti tu stesso dell'inserimento di eventuali righe esistenti.

D'altra parte, se entrambi i server si trovano sulla stessa rete, puoi semplicemente utilizzare la funzione "Server collegato" e collegare il server di origine al server di destinazione, quindi utilizzare l'istruzione MERGE di SQL Server 2008 per importare tutti i dati dall'origine srever nel server di destinazione.

In Esplora oggetti, vai su "Oggetti server", quindi "Server collegati", fai clic con il pulsante destro del mouse e "Aggiungi nuovo server collegato" per stabilire una connessione tra i due server:

Una volta collegati i server, una semplice istruzione MERGE (nuova in SQL Server 2008) ti consentirà di unire i dati di queste due tabelle:

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
;

Leggi di più sulla nuova dichiarazione MERGE qui:

o nella documentazione in linea di SQL Server 2008.

Marco