2011-09-21 55 views
2

有没有一种方法可以动态地发现具有特定名称的分区是否已在使用DMV或XMLA的多维数据集中存在?发现分区名称SSAS

谢谢

回答

3

没有DMV列出此信息。您必须发出一个DISCOVER_XML_METADATA请求并通过返回的XMLA进行解析,这与您在编写对象定义时获得的格式类似。

如果您不介意使用外部程序集,程序集中有一个名为DiscoverXmlMetadata的函数,它可以执行此操作。

如果你想有一个DMV,你可以通过MDX可以使用查询下面的查询将返回所有分区的列表,在数据库

呼叫assp.DiscoverXmlMetadata(“分区”)

4

SELECT OBJECT_ID 
FROM $System.DISCOVER_OBJECT_ACTIVITY 
[Server].Databases.[DatabaseID].Cubes.[CubeID].Measure Groups.[MeasureID].Partitions 
+0

这奏效了我的目的:$System.DISCOVER_OBJECT_ACTIVITY架构,然后根据该OBJECT_PARENT_PATH这将是这样的过滤下来!谢谢! –