我是Analysis Services世界的新手,我想知道为什么我们不能在连接字符串中指定多维数据集名称?
我使用的是sql server 2008 R2和adomdclient程序集版本10.0.0.0
我阅读了以下有关连接字符串的文章:
在社区内容中,在文章的最后,提到了多维数据集名称参数。
我尝试将它包含在连接字符串中,但是在此位置抛出了ArgumentException
Microsoft.AnalysisServices.AdomdClient.ConnectionInfo.InsertKeyValueIntoHash
Reflector告诉我,包含连接字符串参数名称(类MDXMLAPropInfo)的字典不包含“多维数据集名称”属性。我发现了一个“立方体”属性。
也许多维数据集名称属性是遗留属性?
在用于多维数据集浏览的Microsoft代码示例中,我看到连接字符串不包含多维数据集名称,并且浏览了多维数据集集合。
多维数据集集合也包含透视图和维度...似乎我们可以从adomdconnection实例获取所有数据库信息。
adomdclient API是否专为此用途而设计?如果我愿意,我会发现只有一个立方体信息更合乎逻辑。
有什么猜测?我也欢迎任何了解更多分析API的链接。
最诚挚的问候,
Bombinosh
编辑26/06/14:
是的,谢谢弗兰克,我明白了。
困扰我的是幽灵般的立方体名称属性。
实际上,多维数据集名称属性不存在,但多维数据集属性确实存在。
根据我的理解,多维数据集名称在MDX查询中指定。我们可以在连接字符串中为特定需求指定多维数据集名称(在下面的分析服务线程中相关)
如果使用CLEAR CALCULATIONS命令,似乎必须在连接字符串中设置多维数据集名称。
可能还有其他情况,但这是我现在唯一知道的情况。
答案 0 :(得分:2)
从概念上讲,您连接到数据库(在其他上下文中也称为目录)。然后在每个访问一个的语句中声明多维数据集(如SELECT ... FROM [cube]
)。 Analysis Services / XMLA / MDX认为多维数据集有点类似于关系数据库中表的概念,以及类似于视图的透视图。
谢