本系列的文章:
- 《Power BI windows下载安装流程)》
- 《Power BI 11个必学官方示例数据案例(附下载链接)》
- 《Power BI 数据导入(SQL Server、MySQL、网页数据)》
- 《Power BI 存储模式介绍(导入、DirectQuery、双))》
前言
前文提到了数据导入、以及不同的存储模式,本文就着重介绍数据导入时可能遇到的4种错误。
报错时,有时候系统会自动提供解决方法,这样很方便使用者;但是更多的情况下只有一条简单的报错信息,就需要使用者分析原因,进而找到对应的解决方法。
数据源改动、数据类型/格式错误、系统组件限制等等,都是常见导致错误的因素。
一、查询超时
原因:数据查询时间超时。
- 通常数据库都是允许多个用户同时使用,当同时查询的用户多了,就会降低查询效率。比如在同一公司中,不同的部门团队都会使用到用户数据库。
- 通常,管理员会通过设置查询超时来尝试限制用户独占所有硬件资源。 这些超时可以配置为任何时间跨度,最少 5 秒到 30 分钟或更长时间,当查询时间超过这个限制,就会报错。
解决方法:
- 减少数据量。 从查询1000行的数据,减少到100行,通过减少提取的列或行,可以直接减少查询的数据量,进而快速降低查询时间。
- 优化SQL语句。和我们使用SQL查询的道理一样,越是简单直接的语句处理时间越短。如果SQL语句需要执行包括分组、聚合、连接子查询嵌套等等复杂的处理要求,自然就会延长查询时间。通过优化SQL语句,删除掉不必要的连接逻辑,也可以解决查询超时的问题。
- 使用Power Query。如果需要行、列和复杂性,可以考虑使用小块数据,然后使用 Power Query 将这些数据集中在一起。 例如,可以将一个查询中的一半列与另一个查询中的另一半列合并在一起。 完成后,Power Query 可以将这两个查询合并在一起。
二、找不到文件
刷新数据或者从文件导入数据时,可能会出现“无法找到文件”错误。
原因 : 文件位置移动或者权限改变。
- 比较少的情况是因为文件权限被修改, 这种情况解决方法就是让管理员将权限修改回来。
- 而前者,”文件位置改变“是最常见原因,经常是自己手动移动了数据文件,忘记了同步更新Power BI。
解决方法:
- 通过在 Power BI 中选择“转换数据”按钮来打开 Power Query。
- 突出显示正在产生错误的查询。
- 在左侧的“查询设置”下,选择“源”旁边的齿轮图标。
- 将文件位置更改为新位置。
三、数据类型错误
有时,将数据导入 Power BI 时,列显示为空白。
原因:在 Power BI 中解释数据类型时出错。
解决方法:
- 在数据源中指定正确的类型。 通过这个方法可以消除许多这些常见的数据源错误。
- 例如,如果要从 SQL Server 导入数据并查看空白列,则可以尝试在查询中转换为正确的数据类型。
- 在SQL查询语句中定义好数据的类型,使用
SELECT CAST(CustomerPostalCode as varchar(10)) FROM Sales.Customers
- 而不是使用
SELECT CustomerPostalCode FROM Sales.Customers
直接从数据源中提取数据。 一旦源数据中的数据类型发生变化,这种方式就会导致数据类型出错。
- 在SQL查询语句中定义好数据的类型,使用
有的报错会自带解决方法, 例如:
四、找不到格式化为表的任何数据
Power BI 需要在 Excel 中查找格式化为表的数据。 错误事件会告诉你解决方案。 执行以下步骤来解决此问题:
- 打开 Excel 工作簿,突出显示要导入的数据。
- 按 Ctrl-T 键盘快捷方式。 第一行可能是列标题。
- 验证列标题是否反映了你希望命名列的方式。 然后,尝试再次从 Excel 导入数据。 这次应当正常运行了。