获取“不允许多对一关系一侧的列”错误

时间:2017-05-02 22:18:04

标签: powerbi

我已经创建了Power bi项目,它在开始时工作正常,但是当我刷新我的数据源时,我得到这个错误“不允许在多对一关系的一侧的列”。任何可以帮助我??

5 个答案:

答案 0 :(得分:1)

Power BI有时会自动在用于驱动报表中数据的查询之间创建关系。当我在过去遇到这个错误或类似的错误时我:

  • 进入管理关系
  • 确认列出了关系
  • 评估列为活动
  • 的“起始”和“收件人”关系
  • 删除单独数据集之间的任何无效的From和To关系

我过去最常见的问题是,我将有两个非常不同的查询从具有相似列名的不同源中提取数据,而Power BI将在它们之间生成无效的关系。删除关系后,它始终解决了我的问题。

答案 1 :(得分:1)

我通过建立关系,右键单击以查看属性来解决此问题,  并使其成为多对一关系。 enter image description here

答案 2 :(得分:0)

在我的案例中,问题与Power BI威胁将“ SQL View”作为“表”并因此为其创建关系有关。

尽管我已经检查了“管理关系”:

enter image description here

并删除了一个不合理的关系,问题仍然存在。

然后,当我查看“关系”时,问题就解决了

enter image description here

标签,发现与“我的视图”相关的不合理关系并将其删除。

答案 3 :(得分:0)

这些答案都没有帮助我。对我来说,尝试刷新以前已经工作了一段时间的数据集时,我收到此错误。经过调查,我发现源数据库的架构已更改。以前不允许空值的两个字段现在允许空值,并且某些行具有空值。我的Power BI模型仍然希望这些字段不包含空值,但会引发相同且非常误导的错误:

Data source error: Column 'x' in Table 'y' contains blank values and this is not allowed for columns on the one side of a many-to-one relationship or for columns that are used as the primary key of a table. Table: y.

最初看到此错误并在PowerBI Desktop中打开我的报告,然后转到“建模”>“管理关系”。我在表y上寻找了x列的关系,但是不存在这种关系!我很困惑吗?你打赌。

进一步调查之后,我发现数据库模式发生了变化,并通过以下方法更新了Power BI模型:访问数据模型编辑器,在右侧的“字段”面板中展开表y,选择字段x,在其中展开“高级”在“属性”面板上,将“可为空”从“否”更改为“是”。然后,我应用了更改,保存了报表并刷新了数据集。

答案 4 :(得分:-1)

当您的表格或 Excel 中的连接表格包含空白行时,会发生这种情况,要解决此问题,您需要单击 Excel 表格中的任意位置,然后单击表格工具,然后调整表格大小并选择整个单元格范围要包含所有行,请确保不包含空行,然后保存并返回 PowerBI,然后再次刷新它,一切都会起作用。