Как я могу скопировать данные с одного SQL-сервера на другой. Я пытаюсь скопировать данные таблицы с сервера 1 на сервер 2. В server1.table1 данные из таблицы добавляются/удаляются, например, если у меня есть 10 строк и добавляется еще пять строк, через некоторое время первые десять удаляются. С другой стороны, я копирую на другой сервер server2.table2. Я использую функцию EXCEPT для копирования int data2 is server2. Мой следующий код.
Для Сервера1.
CREATE TABLE database1.dbo.Data1
(MachineId bigint IDENTITY(1,1) PRIMARY KEY,
MachineName varchar(50) NOT NULL,
ProgramName varchar(255) NOT NULL,
);
GO
Для сервера2.
CREATE TABLE database2.dbo.Data2
(MachineId bigint IDENTITY(1,1) PRIMARY KEY,
MachineName varchar(50) NOT NULL,
ProgramName varchar(255) NOT NULL,
);
GO
SET IDENTITY_INSERT [Server2].[database2].[dbo].[Data2] ON
GO
Insert into [Server2].[database2].[dbo].[Data2] SELECT * from [Server1].[database1].[dbo].[Data1] EXCEPT SELECT * from [Server2].[database2].[dbo].[Data2]
Но я получаю сообщение об ошибке:
Явное значение для столбца идентификаторов в таблице «[Server2].[database2].[dbo].[Data2]» может быть указано только в том случае, если используется список столбцов и IDENTITY_INSERT включен.
Но я использовал вставку Identity.