Проблемы с sp_addlinkedserver в SQL Server 2000 - PullRequest
3 голосов
/ 17 июня 2010

У меня возникла небольшая проблема с перемещением определенных данных с одного сервера под управлением SQL Server 2000 (A) и с другого сервера под управлением SQL Server 2008 (B).Я пишу сценарий в соответствии со спецификациями клиента, который должен быть выполнен на A, заполняя таблицы в B данными.Тем не менее, я не могу заставить работать серверную ссылку.

-- Bunch of declarations here

EXEC sp_addlinkedserver @server = @ServerName,
            @srvproduct = @ServerProduct,
            @provider = @ProviderString,
            @datasrc = @RemoteHost

-- Data migration stuff here

EXEC sp_dropserver @ServerName

Теперь, если я запускаю скрипт полностью, я получаю сообщение об ошибке:

Msg 7202, Уровень 11, Состояние 2, Строка 55 Не удалось найти сервер 'remoteServer' в sysservers.Выполните sp_addlinkedserver, чтобы добавить сервер к sysservers.

Однако, если я выделю только часть sp_addlinkedserver и выполню ее, ошибки не будет, и я смогу выделить остальную часть сценария и запустить его.Что мне здесь не хватает?

Пожалуйста, помогите!

PS.Если бы была возможность резервного копирования и восстановления, я бы это уже сделал.

1 Ответ

2 голосов
/ 17 июня 2010

Проблема в том, что SQL Server пытается проверить код, прежде чем запустить его.Чтобы показать это, попробуйте ввести одну из ваших команд в EXEC ().Попробуйте поставить GO после команды sp_addlinkedserver.

...