【问题标题】:ssas dimension processing key not found errorssas维度处理键未找到错误
【发布时间】:2012-09-22 13:48:02
【问题描述】:

我有一个奇怪的情况,我试图处理一个维度,数据源是 MSSQL 当我尝试处理这个维度时,我得到了这个错误

OLAP 存储引擎中的错误:处理时找不到属性键:表:'application',列:'Full_Name',值:'Mr Peter McDonald'。该属性是“申请人全名”。

因为我认为我知道问题出在哪里,所以我为此列设置了区分大小写的属性,然后我再次尝试处理,它给了我相同的结果。

当我使用 like 查询列时,我得到两条记录

彼得·麦克唐纳

彼得·麦克唐纳

我通常认为设置大小写敏感性会解决问题,但在这种情况下它不起作用,所以我想知道是否有人知道如何解决这个问题。

非常感谢您提前提供的帮助!

【问题讨论】:

  • 我不知道是否是这种情况,但值为“Mr Peter McDonald”,您的查询返回 Peter McDonald。如果是多个键的情况,错误会这样说
  • 对不起,我不确定我是否正确理解了您的评论,您指的是有报价和没有报价的区别吗?
  • 哦,那部分,是的,对不起,我错过了当我复制粘贴值时,他们都有 Mr
  • 我会建议您执行以下操作。对用作维度表的表进行命名查询,并添加一个新的增量键列以用作维度的键。
  • 你能张贴你的架构的截图吗?

标签: sql-server-2008 ssas business-intelligence dimension


【解决方案1】:

抱歉,你们回来太晚了。 好久没登陆stackoverflow了。

简短版: 这基本上是由于 SQL server 默认比较不区分大小写造成的。 所以如果你想防止这个问题,你必须使表或数据库区分大小写 - 将排序规则设置为 ASCS

略长的版本: 即使 MSSQL 匹配不区分大小写的内容,它仍然以不同的方式存储值,当 SSAS 尝试对特定列执行不同的操作时,这成为 SSAS 的一个问题。 已经有一段时间了,所以我记不清了,但它对于 1 个索引会有两个值,它会像我发布的问题一样抱怨。

【讨论】:

    【解决方案2】:

    更改区分大小写的设置后,您需要重新部署多维数据集。

    【讨论】:

    • 我一直这样做,但我没有完成这项工作。不过感谢您的评论。
    猜你喜欢
    • 2017-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-22
    相关资源
    最近更新 更多