基于链接到其中一个维度表的事实表中的键添加新维度

时间:2009-04-01 09:27:11

标签: sql-server sql-server-2005 ssas

我有一个事实表,包含所有日期&时间属性作为链接到实际DATE&的键。时间维度。 当我使用SSAS 2005在其上创建一个立方体时,这些日期时间属性被拆分为多维数据集的各个维度,这是正常的。

问题是当我向事实表添加一个新的datetime属性时,我的多维数据集不接受它并且不会像其他一样创建新的日期时间维度,除非我从头开始重新创建多维数据集。

任何人都可以建议,如何将此新属性作为维度单独添加,而无需重新创建多维数据集?

2 个答案:

答案 0 :(得分:0)

我很难理解你的问题。

听起来好像您正在尝试将新的日期时间列(事实)(引用您的apporpriate Dimension / s属性)添加到Fact表中。如果是这样,这会改变多维数据集的结构,因此需要重新处理多维数据集。

为确保正确使用术语,Dimension包含属性。事实表包含事实而非属性。

以下参考资料可能有用。

http://msdn.microsoft.com/en-us/library/aa905984(SQL.80).aspx

回复:评论

在处理多维数据集之前,需要在Business Intelligence Development Studio(BIDS)的数据源视图(DSV)中应用/注册任何结构更改。单击DSV上的刷新按钮,应提示您选择将任何已发现的更改应用于表。此外,如果您对Dimensions的基础表进行任何添加/修改,那么在重新处理多维数据集之前,您可能还需要将相关属性添加到相应的Dimension .dim文件中。

希望这是有道理的。

答案 1 :(得分:0)

问题通常是由于未知成员和空处理选项设置以及雪花模式(如果您在多维数据集中有它)。我弄清楚问题究竟是什么。 如果您有一个提到的案例,那么当您刷新数据源视图时,SSAS本身不会显示结构更改。在我的情况下,因为它是日期&时间维度,我必须手动添加新维度(多维数据集维度)并正确设置其NULL处理选项(在我的情况下为UnknownMember而非自动)。

由于对添加到基础事实表的所有此类新列进行这些更改可能有点困难,因此您可以尝试使用Find& amp;更新XMLA脚本。替换方法,精心制作。