Kopiowanie kolumn z jednej tabeli do innej (aparat bazy danych)
Dotyczy: SQL Server 2016 (13.x) i nowszych
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL database w platformie Microsoft Fabric
W tym temacie opisano sposób kopiowania kolumn z jednej tabeli do innej, kopiowania tylko definicji kolumny lub definicji i danych w programie SQL Server przy użyciu programu SQL Server Management Studio lub Języka Transact-SQL.
w tym temacie
Przed rozpoczęciem:
Aby skopiować kolumny przy użyciu:
Przed rozpoczęciem
Ograniczenia i ograniczenia
Podczas kopiowania kolumny, która ma typ danych aliasu z jednej bazy danych do innej, typ danych aliasu może nie być dostępny w docelowej bazie danych. W takim przypadku kolumna zostanie przypisana najbliższemu pasującemu typowi danych podstawowemu dostępnemu w tej bazie danych.
Bezpieczeństwo
Uprawnienia
Wymaga uprawnienia ALTER w tabeli.
Korzystanie z programu SQL Server Management Studio
Aby skopiować definicje kolumn z jednej tabeli do innej
Otwórz tabelę z kolumnami, które chcesz skopiować, oraz tabelę, do której chcesz je skopiować, klikając prawym przyciskiem myszy każdą tabelę, a następnie wybierając pozycję Projekt.
Kliknij kartę tabeli z kolumnami, które chcesz skopiować, i wybierz te kolumny.
W menu Edytuj kliknij pozycję Kopiuj.
Kliknij kartę tabeli, do której chcesz skopiować kolumny.
Wybierz kolumnę, która ma znaleźć się za wstawionymi kolumnami, a następnie z menu Edytuj kliknij opcję Wklej.
Aby skopiować dane z jednej tabeli do innej
Postępuj zgodnie z instrukcjami dotyczącymi kopiowania definicji kolumn powyżej.
Uwaga
Przed rozpoczęciem kopiowania danych z jednej tabeli do innej upewnij się, że typy danych w kolumnach docelowych są zgodne z typami danych kolumn źródłowych
Otwórz nowe okno Edytora zapytań.
Kliknij prawym przyciskiem myszy Edytor zapytań, a następnie kliknij pozycję Projektowanie zapytania w edytorze.
W oknie dialogowym Dodaj tabelę wybierz tabelę źródłową i tabelę docelową, kliknij przycisk Dodaj, a następnie zamknij okno dialogowe Dodaj tabelę.
Kliknij prawym przyciskiem myszy otwarty obszar Edytora zapytań, wskaż polecenie Zmień typ, a następnie kliknij Wstaw wyniki.
W oknie dialogowym Wybierz tabelę docelową dla opcji Wstaw wyniki wybierz tabelę docelową.
W górnej części Projektanta zapytań kliknij kolumnę źródłową w tabeli źródlowej.
Projektant zapytań utworzył teraz zapytanie INSERT. Kliknij przycisk OK, aby umieścić zapytanie w oryginalnym oknie Edytor zapytań.
Wykonaj zapytanie, aby wstawić dane z tabeli źródłowej do tabeli docelowej.
Korzystanie z Transact-SQL
Aby skopiować definicje kolumn z jednej tabeli do innej
- Nie można kopiować pojedynczych kolumn z jednej tabeli do innej istniejącej tabeli przy użyciu instrukcji Transact-SQL. Można jednak utworzyć nową tabelę w domyślnej grupie plików i wstawić do niej wynikowe wiersze z zapytania przy użyciu polecenia SELECT INTO. Aby uzyskać więcej informacji, zobacz INTO Clause (Transact-SQL).
Aby skopiować dane z jednej tabeli do innej
W Eksploratorze Obiektównawiąż połączenie z wystąpieniem silnika bazy danych.
Na pasku standardowym kliknij pozycję Nowe zapytanie.
Skopiuj i wklej poniższy przykład w oknie zapytania, a następnie kliknij pozycję Wykonaj.
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