参考:
sp_testlinkedserver (Transact-SQL)
使用sys.sp_testlinkedserver测试Linked Server连接是否正常 在论坛看到有人提问是否可以用T-SQL测试LinkedServer的连接是否正常,这样访问多个Linked Server的时候如果其中的一个连接失败就可以跳过不去处理。 在SQLServer 2005和之后的版本中提供了一个系统存储过程 "sp_testlinkedserver"可以用来测试LinkedServer是否连通。这个存储过程以Linked Server的名称作为输入参数,返回值0表示成功,1返回失败。 下面是一段测试代码:
declare @srvr nvarchar(128), @retval int;
set @srvr = 'MylinkedServerName';
begin try
exec @retval = sys.sp_testlinkedserver@srvr;
end try
begin catch
set @retval = sign(@@error);
end catch;
if @retval <> 0
raiserror('Unable to connect toserver. This operation will be tried later!',16, 2 );