【问题标题】:Get Instance Name from Analysis Services like @@ServerName从分析服务中获取实例名称,例如 @@ServerName
【发布时间】:2014-10-09 21:09:42
【问题描述】:

有没有办法从 Analysis Services 实例中获取当前的服务器名?与SELECT @@SERVERNAME 基本相同,但适用于 SSAS。

我查看了SELECT * FROM $system.DISCOVER_INSTANCES,但返回错误:

“INSTANCE_NAME”限制是必需的,但请求中缺少。考虑使用 SYSTEMRESTRICTSCHEMA 来提供限制。

当尝试使用SYSTEMRESTRICTSCHEMA 时,我得到了同样的错误。当尝试使用 INSTANCE_NAME 时,我得到了同样的错误。当尝试使用SYSTEMRESTRICTSCHEMA 并指定INSTANCE_NAME 时,我得到了同样的错误。

感谢任何帮助或见解!

【问题讨论】:

    标签: sql sql-server sql-server-2012 ssas dmv


    【解决方案1】:

    这将为您提供服务器名称:

    select [Value] as ServerName from $SYSTEM.DISCOVER_PROPERTIES where [PropertyName] = 'ServerName';
    

    您不需要 $system.DISCOVER_INSTANCES,但其语法是:

    select * from SYSTEMRESTRICTSCHEMA($SYSTEM.DISCOVER_INSTANCES, INSTANCE_NAME='MSSQLSERVER');
    

    【讨论】:

      【解决方案2】:

      您正面临错误,因为未向函数提供必要的参数。请参阅herehere 了解如何将参数传递给这些函数。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-08-22
        • 1970-01-01
        • 2012-05-24
        • 2019-07-08
        • 2011-01-14
        • 2018-08-22
        • 2017-06-04
        相关资源
        最近更新 更多