我的 SQL Server 中有许多链接服务器。 需要在脚本中获取这些链接服务器的 SQL Server 版本。 我发现以下命令返回当前服务器的 SQL Server 版本
SELECT convert(varchar(max),serverproperty(''productversion''))
如何在链接服务器上使用此命令? 当然,我必须指定链接服务器作为变量。
除非你的主服务器是 2000 或更旧,否则你可以使用这样的东西:
exec ('select serverproperty(''productversion'');') at [LinkedServerName];
此行必须作为动态 SQL 执行。链接服务器名称列表可以从
sys.servers
获取。另外,这可能需要在链接服务器的属性中启用一些选项(不幸的是,忘记了哪一个,但错误消息会告诉您需要启用哪一个)。
有关详细信息,请参阅执行。
我并不是说这是最好的选择,但它绝对应该有效,除非你的服务器的动物园真的很旧。除此之外,还有其他类似的方法,例如 OPENQUERY()。事实上,这个甚至在 2000 上也应该可以工作。