Kopieren von Spalten von einer Tabelle in eine andere Tabelle (Datenbank-Engine)

Gilt für: SQL Server 2016 (13.x) und höher Azure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

In diesem Thema wird beschrieben, wie Sie Spalten von einer Tabelle in eine andere Tabelle kopieren. Dabei kopieren Sie entweder nur die Spaltendefinition oder die Definition und Daten in SQL Server, indem Sie SQL Server Management Studio oder Transact-SQL verwenden.

In diesem Thema

Vorbereitungen

Einschränkungen

Wenn Sie eine Spalte mit einem Aliasdatentyp aus einer Datenbank in eine andere kopieren, steht der Aliasdatentyp in der Zieldatenbank möglicherweise nicht zur Verfügung. In diesem Fall wird der Spalte der ähnlichste Grunddatentyp zugewiesen, der in der Datenbank verfügbar ist.

Sicherheit

Berechtigungen

Erfordert die ALTER-Berechtigung für die Tabelle.

Verwendung von SQL Server Management Studio

So kopieren Sie Spaltendefinitionen von einer Tabelle in eine andere

  1. Öffnen Sie die Tabelle mit den zu kopierenden Spalten und diejenige, in die Sie die Spalten kopieren möchten, indem Sie mit der rechten Maustaste auf die Tabellen und dann auf Entwerfenklicken.

  2. Klicken Sie auf die Registerkarte für die Tabelle mit den zu kopierenden Spalten, und wählen Sie diese Spalten aus.

  3. Klicken Sie im Menü Bearbeiten auf den Befehl Kopieren.

  4. Klicken Sie auf die Registerkarte der Tabelle, in die Sie die Spalten kopieren möchten.

  5. Wählen Sie die Spalte aus, die den eingefügten Spalten folgen soll, und klicken Sie im Menü Bearbeiten auf Einfügen.

So kopieren Sie Daten von einer Tabelle in eine andere

  1. Befolgen Sie die obigen Anweisungen zum Kopieren von Spaltendefinitionen.

    Hinweis

    Bevor Sie Daten von einer Tabelle in eine andere kopieren, stellen Sie sicher, dass die Datentypen in den Zielspalten mit denen der Quellspalten kompatibel sind.

  2. Öffnen eines neuen Fensters des Abfrage-Editors

  3. Klicken Sie mit der rechten Maustaste auf den Abfrage-Editor, und klicken Sie dann auf Abfrage in Editor entwerfen.

  4. Wählen Sie im Dialogfeld Tabelle hinzufügen die Quell- und Zieltabelle aus, klicken Sie auf Hinzufügen, und schließen Sie dann das Dialogfeld Tabelle hinzufügen .

  5. Klicken Sie mit der rechten Maustaste in einen offenen Bereich des Abfrage-Editors, zeigen Sie auf Typ ändern, und klicken Sie dann auf Ergebnisse einfügen.

  6. Wählen Sie im Dialogfeld Zieltabelle für Anfügeabfrage auswählen die Zieltabelle aus.

  7. Klicken Sie im oberen Teil des Abfrage-Designers auf die Quellspalte in der Quelltabelle.

  8. Der Abfrage-Designer hat jetzt eine Einfügeabfrage erstellt. Klicken Sie auf „OK“, um die Abfrage im ursprünglichen Fenster des Abfrage-Editors zu platzieren.

  9. Führen Sie die Abfrage aus, um die Daten aus der Quelltabelle in der Zieltabelle einzufügen.

Verwenden von Transact-SQL

So kopieren Sie Spaltendefinitionen von einer Tabelle in eine andere

  1. Anhand von Transact-SQL-Anweisungen können Sie keine einzelnen Spalten aus einer Tabelle in eine andere vorhandene Tabelle kopieren. Mit SELECT INTO können Sie jedoch eine neue Tabelle in der Standarddateigruppe erstellen, und die Ergebniszeilen aus der Abfrage werden darin eingefügt. Weitere Informationen finden Sie unter INTO Clause (Transact-SQL).

So kopieren Sie Daten von einer Tabelle in eine andere

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.

    USE AdventureWorks2022;  
    GO  
    CREATE TABLE dbo.EmployeeSales  
    ( BusinessEntityID   varchar(11) NOT NULL,  
      SalesYTD money NOT NULL  
    );  
    GO  
    INSERT INTO dbo.EmployeeSales  
        SELECT BusinessEntityID, SalesYTD   
        FROM Sales.SalesPerson;  
    GO