sql >> Databáze >  >> RDS >> Sqlserver

importovat data z jedné tabulky do jiné tabulky

V SQL Server 2008 můžete naskriptovat svou tabulku Goo.Goo v SQL Server Mgmt studio a říct jí, aby také vytvořila skript pro vložení všech dat pomocí T-SQL INSERT prohlášení. Přejděte do Průzkumníka objektů, klikněte pravým tlačítkem na databázi, vyberte "Úkoly> Generovat skripty", vyberte tabulku, pro kterou chcete vygenerovat příkazy pro vkládání dat, a ujistěte se, že používáte tuto možnost zde:

Ty by pak mohly být spuštěny na druhém serveru a vložit obsah tabulky. V tomto případě však budete muset vkládání možných existujících řádků zvládnout sami.

Na druhou stranu, pokud jsou oba servery ve stejné síti, stačí použít funkci „Propojený server“ a propojit zdrojový server s cílovým serverem a poté použít příkaz SQL Server 2008 MERGE k importu všech dat ze zdroje. srever do cílového serveru.

V Průzkumníku objektů přejděte na „Objekty serveru“, poté na „Propojené servery“, klikněte pravým tlačítkem a „Přidat nový propojený server“ pro navázání spojení mezi těmito dvěma servery:

Jakmile jsou servery propojeny, jednoduchý příkaz MERGE (nový v SQL Server 2008) vám umožní sloučit data z těchto dvou tabulek:

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
;

Přečtěte si více o novém prohlášení MERGE zde:

nebo v SQL Server 2008 Books Online.

Marc



  1. order_by on Many-to-Many pole má za následek duplicitní položky v sadě dotazů

  2. Důvody pro upgrade na SQL Server 2017

  3. Proč ISNUMERIC('.') vrací 1?

  4. Oracle NLS_DATE_FORMAT nefunguje správně