【问题标题】:Errors in the OLAP storage engine: A duplicate attribute key has been found when processing: TableOLAP 存储引擎中的错误:处理时发现重复的属性键:表
【发布时间】:2017-03-14 07:32:38
【问题描述】:

我已经阅读了很多关于此的文章,但无法找到确切的解决方案。

首先我用 ISNULL 交换了所有的 NULL,然后我又得到了同样的错误:

OLAP 存储引擎中的错误:处理时发现重复的属性键:表:'dbo_LoyaltyProfileMaster',列:'ReferreCode',值:'EST000001'。该属性是“参考代码”。

如果我删除此特定数据,则它运行良好。

但根据我的要求,我可以在此列中获得重复项

由于这不是主键,我认为它应该可以正常运行。

如果您想查看此 SQL 代码,请告诉我。

【问题讨论】:

  • 底层数据结构中ReferreCode的数据类型是什么?

标签: sql-server ssas


【解决方案1】:

如果列 ReferreCode 包含值 0(零)和值 NULL,则可能发生这种情况。您应该将 NULL 值显式转换为在真实数据库结构上定义命名查询的非 null 值;所以如果你的数据库表是dbo_LoyaltyProfileMaster,你应该在数据源视图中用一个命名查询替换这个表,它的定义应该是这样的:

SELECT 
    <field list of fields not including ReferreCode>
  , COALESCE(ReferreCode, 0) as ReferreCode 
FROM dbo_LoyaltyProfileMaster

如果您愿意,您可以将 NULL 映射到不同的值(不一定是 0)。

并且您必须确保在维度数据源视图对象中也包含此值,可能还定义视图或命名查询。

【讨论】:

【解决方案2】:

转到您的维度属性 -> 错误配置 -> keyDuplicate 然后将键副本的值从 reportAndStop 更改为 IgnoreError 祝你好运

【讨论】:

    猜你喜欢
    • 2013-05-10
    • 1970-01-01
    • 1970-01-01
    • 2011-10-29
    • 1970-01-01
    • 2016-02-12
    • 1970-01-01
    • 2013-08-07
    • 1970-01-01
    相关资源
    最近更新 更多