Если вы не можете настроить связанный сервер (что я рекомендую вам сделать), вы можете использовать OPENROWSET
.Это предполагает , что у вас есть учетная запись AD в обоих случаях с соответствующими разрешениями.Вам также нужно будет подключиться к экземпляру, в который вы хотите вставить данные, а не к серверу, с которого поступают данные.Это должно дать вам идею:
USE db2;
GO
INSERT INTO dbo.Employees (EmployeeID, FullName, Region)
SELECT EmployeeID, FirstName + ' ' + LastName AS FullName, Region
FROM OPENROWSET('SQLNCLI','SERVER=server2;Trusted_Connection=yes',
N'SELECT EmployeeID, FirstName, LastName, Region FROM db1.dbo.Employees');
Если у вас нет логина AD для обоих, вам нужно вместо этого использовать аутентификацию SQL.если это не вариант, то вам придется полностью пойти другим путем.