SQL Server 2000中的sp_addlinkedserver问题

时间:2010-06-17 14:19:27

标签: sql-server-2008 sql-server-2000 linked-server

从运行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,Level 11,State 2,Line 55   找不到服务器'remoteServer'   在sysservers中。执行   sp_addlinkedserver添加服务器   到sysservers。

但是,如果我只突出显示sp_addlinkedserver部分并执行它,则没有错误,我可以突出显示脚本的其余部分并运行它。我在这里错过了什么?

请帮忙!

PS。如果备份还原是一个选项,我本来就已经这样做了。

1 个答案:

答案 0 :(得分:2)

问题是SQL Server在运行代码之前尝试验证代码。为了表明这一点,尝试将一个命令放在EXEC()中。尝试在sp_addlinkedserver命令后放置一个GO。