StrToMember (MDX)

更新日期: 2006 年 7 月 17 日

返回由多维表达式 (MDX) 格式的字符串指定的成员。

语法

StrToMember(Member_Name [,CONSTRAINED] ) 

参数

  • Member_Name
    直接或间接指定成员的有效字符串表达式。

备注

StrToMember 函数返回指定的成员。StrToMember 函数通常与用户定义函数一起使用,以将外部函数中的成员规范返回到 MDX 语句。

  • 如果使用 CONSTRAINED 标志,则成员名称必须可直接解析为限定或未限定的成员名称。此标志通过指定字符串可降低注入攻击的风险。如果所提供的字符串无法直接解析为限定或未限定的成员名称,将出现以下错误:“违反了 STRTOMEMBER 函数中 CONSTRAINED 标志所规定的限制。”
  • 如果未使用 CONSTRAINED 标志,指定的成员将能直接解析为成员名称,或解析为 MDX 表达式以解析为名称。

示例

下面的示例使用 StrToMember 函数返回 State-Province 属性层次结构中 Bayern 成员的 Reseller Sales Amount 度量值。指定字符串提供了限定的成员名称。

SELECT StrToMember ('[Geography].[State-Province].[Bayern]')
ON 0
FROM [Adventure Works]

下面的示例使用 StrToMember 函数返回 Bayern 成员的 Reseller Sales Amount 度量值。由于成员名称字符串仅提供了一个未限定的成员名称,因此该查询返回指定成员的第一个实例,而指定成员恰好在 Customer 维度(不与 Reseller Sales 相交)的 Customer Geography 层次结构中。最佳做法要求指定限定名称以确保获得预期的结果。

SELECT StrToMember ('[Bayern]').Parent
ON 0
FROM [Adventure Works]

下面的示例使用 StrToMember 函数返回 State-Province 属性层次结构中 Bayern 成员的 Reseller Sales Amount 度量值。所提供的成员名称字符串解析为限定的成员名称。

SELECT StrToMember ('[Geography].[Geography].[Country].[Germany].FirstChild')
ON 0
FROM [Adventure Works]

下面的示例返回因 CONSTRAINED 标志而引起的错误。虽然所提供的成员名称字符串包含一个可解析为限定的成员名称的有效 MDX 成员表达式,但是 CONSTRAINED 标志要求成员名称字符串包含限定或未限定的成员名称。

SELECT StrToMember ('[Geography].[Geography].[Country].[Germany].FirstChild', CONSTRAINED)
ON 0
FROM [Adventure Works]

请参阅

参考

MDX 函数参考 (MDX)

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 7 月 17 日

更改的内容:
  • 更新了语法和参数,以使表述更加清晰。
  • 添加了更新的示例。