Копирование столбцов из одной таблицы в другую (компонент Database Engine)

Применимо к: SQL Server 2016 (13.x) и более поздних версий Azure SQL Database Управляемый экземпляр SQL AzureAzure Synapse Analytics AnalyticsPlatform System (PDW)

В этом разделе описывается копирование столбцов из одной таблицы в другую с копированием только определения столбца или определения и данных в SQL Server с помощью SQL Server Management Studio или Transact-SQL.

В этом разделе

Перед началом

Ограничения

При копировании из одной базы данных в другую столбца, имеющего псевдоним типа данных, исходный тип данных в целевой базе данных может оказаться недоступным. В этом случае столбцу будет назначен ближайший подходящий базовый тип данных, доступный в целевой базе данных.

Безопасность

Разрешения

Требуется разрешение ALTER на таблицу.

Использование среды SQL Server Management Studio

Копирование определения столбца из одной таблицы в другую

  1. Щелкнув правой кнопкой мыши, откройте таблицу со столбцами, предназначенными к копированию, и таблицу, в которую необходимо выполнить копирование, затем нажмите кнопку Разработка.

  2. Выберите вкладку исходной таблицы и выделите нужные столбцы.

  3. В меню Правка выберите Копировать.

  4. Выберите вкладку таблицы, в которую требуется скопировать столбцы.

  5. Выделите столбец, после которого нужно поместить вставляемые столбцы, и в меню Правка выберите Вставить.

Копирование данных из одной таблицы в другую

  1. Следуйте приведенным выше инструкциям для копирования определения столбцов.

    Примечание

    Прежде чем скопировать данные из одной таблицы в другую, убедитесь, что типы данных целевых столбцов совместимы с типами данных исходных.

  2. Откройте новое окно редактора запросов.

  3. Щелкните редактор запросов правой кнопкой мыши и выберите Создать запрос в редакторе.

  4. В диалоговом окне Добавление таблицы выберите исходную и целевую таблицы, нажмите кнопку Добавить, а затем закройте диалоговое окно Добавление таблицы .

  5. Щелкните правой кнопкой мыши пустую область редактора запросов, наведите указатель на пункт Изменить тип и выберите Вставить результаты.

  6. В диалоговом окне Выбор целевой таблицы для инструкции Insert Results выберите целевую таблицу.

  7. В верхней части конструктора запросов щелкните исходный столбец исходной таблицы.

  8. Конструктор запросов создал запрос INSERT. Нажмите кнопку "ОК", чтобы поместить запрос в исходное окно редактора запросов.

  9. Выполните запрос, чтобы вставить данные из исходной таблицы в целевую.

Использование Transact-SQL

Копирование определения столбца из одной таблицы в другую

  1. Нельзя копировать отдельные столбцы из одной таблицы в другую (существующую) с использованием инструкций Transact-SQL. Однако можно создать новую таблицу в файловой группе по умолчанию и вставить в нее результирующие строки из запроса с помощью инструкции SELECT INTO. Дополнительные сведения см. в разделе Предложение INTO (Transact-SQL).

Копирование данных из одной таблицы в другую

  1. В обозревателе объектовподключитесь к экземпляру компонента Компонент Database Engine.

  2. На стандартной панели выберите пункт Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.

    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