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-Datenbank
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics 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:
So kopieren Sie Spalten mit:
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
Ö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.
Klicken Sie auf die Registerkarte für die Tabelle mit den zu kopierenden Spalten, und wählen Sie diese Spalten aus.
Klicken Sie im Menü Bearbeiten auf den Befehl Kopieren.
Klicken Sie auf die Registerkarte der Tabelle, in die Sie die Spalten kopieren möchten.
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
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.
Öffnen eines neuen Fensters des Abfrage-Editors
Klicken Sie mit der rechten Maustaste auf den Abfrage-Editor, und klicken Sie dann auf Abfrage in Editor entwerfen.
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 .
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.
Wählen Sie im Dialogfeld Zieltabelle für Anfügeabfrage auswählen die Zieltabelle aus.
Klicken Sie im oberen Teil des Abfrage-Designers auf die Quellspalte in der Quelltabelle.
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.
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
- 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
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
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