sql-server-2008 - SQL Server 2000 中 sp_addlinkedserver 的问题

标签 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 Could not find server 'remoteServer' in sysservers. Execute sp_addlinkedserver to add the server to sysservers.

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

请帮忙!

附言。如果备份恢复是一个选项,我早就这么做了。

最佳答案

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

关于sql-server-2008 - SQL Server 2000 中 sp_addlinkedserver 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3062461/

相关文章:

sql - 将所有同义词更改为另一个数据库

sql-server-2008 - Entity Framework 4 Code First - 防止数据库删除/创建

sql - 存储过程间歇性地超时!

sql-server - SQL Server 链接服务器示例查询

mysql - SELECT * FROM MySQL Linked Server 使用没有 OpenQuery 的 SQL Server

带转义单引号的 SQL Like 子句

sql-server-2008 - 如何检查 SQL Server 数据库的性能?

sql - 如何找出哪些数据不会转换?

sql-server - 使用 T-SQL 查找子字符串最后一次出现的索引

sql - 在sql server 2008 R2上将多个链接服务器从一个服务器迁移到另一个