Копирование столбцов из одной таблицы в другую (ядро СУБД)
Область применения: SQL Server 2016 (13.x) и более поздних версий База данных SQL Azure Управляемый экземпляр SQL Azure Azure Synapse Analytics Analytics Platform System (PDW)
В этом разделе описывается, как скопировать столбцы из одной таблицы в другую, копировать либо только определение столбца, либо определение и данные в SQL Server с помощью SQL Server Management Studio или Transact-SQL.
В этом разделе
Перед началом:
Копирование столбцов с помощью:
Перед началом
Ограничения
При копировании из одной базы данных в другую столбца, имеющего псевдоним типа данных, исходный тип данных в целевой базе данных может оказаться недоступным. В этом случае столбцу будет назначен ближайший подходящий базовый тип данных, доступный в целевой базе данных.
Безопасность
Разрешения
Требуется разрешение ALTER на таблицу.
Использование среды SQL Server Management Studio
Копирование определения столбца из одной таблицы в другую
Щелкнув правой кнопкой мыши, откройте таблицу со столбцами, предназначенными к копированию, и таблицу, в которую необходимо выполнить копирование, затем нажмите кнопку Разработка.
Выберите вкладку исходной таблицы и выделите нужные столбцы.
В меню Правка выберите Копировать.
Выберите вкладку таблицы, в которую требуется скопировать столбцы.
Выделите столбец, после которого нужно поместить вставляемые столбцы, и в меню Правка выберите Вставить.
Копирование данных из одной таблицы в другую
Следуйте приведенным выше инструкциям для копирования определения столбцов.
Примечание.
Прежде чем скопировать данные из одной таблицы в другую, убедитесь, что типы данных целевых столбцов совместимы с типами данных исходных.
Откройте новое окно редактора запросов.
Щелкните редактор запросов правой кнопкой мыши и выберите Создать запрос в редакторе.
В диалоговом окне Добавление таблицы выберите исходную и целевую таблицы, нажмите кнопку Добавить, а затем закройте диалоговое окно Добавление таблицы .
Щелкните правой кнопкой мыши пустую область редактора запросов, наведите указатель на пункт Изменить тип и выберите Вставить результаты.
В диалоговом окне Выбор целевой таблицы для инструкции Insert Results выберите целевую таблицу.
В верхней части конструктора запросов щелкните исходный столбец исходной таблицы.
Конструктор запросов создал запрос INSERT. Нажмите кнопку "ОК", чтобы поместить запрос в исходное окно редактора запросов.
Выполните запрос, чтобы вставить данные из исходной таблицы в целевую.
Использование Transact-SQL
Копирование определения столбца из одной таблицы в другую
- Нельзя копировать отдельные столбцы из одной таблицы в другую (существующую) с использованием инструкций Transact-SQL. Однако можно создать новую таблицу в файловой группе по умолчанию и вставить в нее результирующие строки из запроса с помощью инструкции SELECT INTO. Дополнительные сведения см. в предложении INTO (Transact-SQL).
Копирование данных из одной таблицы в другую
В обозревателе объектов подключитесь к экземпляру ядра СУБД.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
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