数据获取与连接:从Excel、CSV、数据库及云端数据源导入数据

经营分析看板的价值,首先取决于数据能否准确、及时地进入 Power BI。数据获取与连接是搭建看板的第一道工序,也是后续数据建模与可视化的基础。本章将系统讲解从 Excel、CSV、SQL Server、MySQL 及云端数据源导入数据的完整路径,并针对高频连接故障给出可落地的排查方案。无论你是财务、销售还是运营分析人员,掌握这些方法都能显著减少“数据进不来”或“数据对不上”的困扰。

Power BI 数据获取与连接全景图 文件数据源 Excel 工作簿 CSV / TXT JSON / XML PDF / 文件夹 数据库源 SQL Server MySQL Oracle / PostgreSQL SQLite / Access 云端数据源 Azure SQL / Blob SharePoint 列表 Dataverse / Dynamics Google Analytics / Web Power Query 连接器 数据清洗 → 数据建模 → 可视化看板 连接器选择 → 身份验证 → 预览数据 → 加载或转换

3.1 文件数据源导入:Excel 与 CSV 的精细控制

核心原理

Excel 和 CSV 是经营分析中最常见的数据载体。Power BI 通过内置的 Power Query 引擎读取文件内容,其核心优势在于:不直接加载原始数据,而是先建立“查询”引用,允许你在加载前完成列类型修正、过滤、合并等操作。Excel 文件本质是压缩包格式(XLSX),Power Query 会解析其中的 Sheet、命名区域和表格;CSV 则是纯文本,需要明确指定分隔符、编码和区域设置。

操作流程

  1. 获取数据入口:在 Power BI Desktop 的“开始”选项卡中,点击“获取数据” → 选择“Excel”或“文本/CSV”。
  2. 文件定位与预览:浏览文件路径,系统会弹出导航器窗口,左侧显示所有 Sheet 或表格对象,右侧显示数据预览。
  3. 转换或加载:点击“转换数据”进入 Power Query 编辑器进行清洗;点击“加载”则直接导入数据模型。
  4. CSV 特殊设置:在连接 CSV 时,注意检查“文件原始格式”(默认 UTF-8)、“分隔符”(逗号、分号、制表符)和“数据类型检测”选项。
对比维度Excel(XLSX)CSV
多 Sheet 支持支持,可分别选择不支持,单表结构
数据类型保留较好,但日期/数字仍需校验全部按文本读取,需手动转换
公式与格式仅读取值,忽略公式和样式无公式概念
性能表现文件较大时加载较慢轻量,加载速度快
常见问题合并单元格、空行干扰乱码、分隔符错位
常见误区:很多人直接点击“加载”而不进入 Power Query 检查。Excel 中的“合并单元格”会导致数据表出现大量 null 值;CSV 文件若包含中文,且原始编码为 GBK 而非 UTF-8,会出现乱码。建议每次导入后,先检查“列类型”和“前 100 行预览”。

实战场景:销售明细 CSV 导入

某零售企业每日导出销售明细 CSV(约 5 万行),包含订单号、商品编码、销售数量、单价、成交时间等字段。初始导入时发现“成交时间”列显示为文本,且“单价”列带有货币符号“¥”。在 Power Query 中执行以下操作:

  1. 将“成交时间”列类型改为“日期时间”,并指定格式“yyyy-MM-dd HH:mm:ss”。
  2. 对“单价”列使用“替换值”功能,删除“¥”字符,再转换为小数类型。
  3. 删除“订单号”列中的重复项,确保唯一性。
  4. 添加自定义列“销售额” = 销售数量 × 单价。

清洗完成后加载到模型,后续透视汇总效率显著提升。此案例说明:CSV 导入的关键在于“类型修正”和“清洗规则”的固化,Power Query 会自动记录步骤,下次刷新时自动重放。

3.2 数据库连接:SQL Server 与 MySQL 的配置与优化

核心原理

数据库连接采用 驱动程序 + 连接字符串 的机制。Power BI 通过 ODBC 或 ADO.NET 驱动与数据库通信。SQL Server 使用原生 SQL Server Native Client,MySQL 则需要安装 MySQL Connector/NET 或 ODBC 驱动。连接时需指定服务器地址、端口、数据库名、身份验证方式(Windows 或 SQL 账号)。Power Query 会将你的表选择或 SQL 查询语句翻译为底层数据源可执行的命令,并支持“查询折叠”——即尽可能将过滤、聚合操作下推到数据库执行,减少本地内存压力。

判断方法与操作流程

  • 连接前检查:确认数据库服务是否启动、端口是否开放(SQL Server 默认 1433,MySQL 默认 3306)、防火墙是否放行。
  • SQL Server 连接:选择“SQL Server 数据库”连接器 → 输入服务器名称(如 192.168.1.100,1433)→ 选择数据库 → 选择“DirectQuery”或“Import”模式。
  • MySQL 连接:选择“MySQL 数据库”连接器 → 输入服务器和端口 → 输入用户名/密码 → 在高级选项中可以编写 SQL 语句。
  • 测试连接:点击“确定”后,Power BI 会测试连接并显示数据库对象树。
经验提示:对于大型数据库(超过百万行),建议使用 DirectQuery 模式,避免将全量数据导入本地。但 DirectQuery 对 DAX 函数有限制,且每次交互都会实时查询数据库。对于经营分析看板,通常建议使用 Import 模式并设置定期刷新,兼顾性能与灵活性。

案例拆解:SQL Server 销售订单导入

某制造企业需要分析近三年的订单数据,数据量约 800 万行,存储在 SQL Server 中。初始使用 Import 模式导入,耗时 20 分钟且内存占用过高。优化方案如下:

步骤操作效果
1在 Power Query 中编写 SQL 语句,仅提取“订单日期 >= 2022-01-01”的数据数据量降至 300 万行
2删除不需要的列(如备注、内部标识)减少列存储开销
3将“订单日期”列改为日期类型,并创建日期维度表关联提升时间筛选性能
4设置每日凌晨 2 点刷新保证数据时效性

优化后导入时间缩短至 4 分钟,看板响应速度提升 60%。此案例说明:数据库导入的核心策略是“源头过滤”和“按需取数”,不要盲目全量加载。

3.3 云端数据源与常见连接故障排查

核心原理

云端数据源包括 Azure SQL、SharePoint 列表、Dataverse、Google Analytics 等。Power BI 通过 OAuth 2.0 或 进行身份验证。与本地数据源不同,云端连接通常需要经过 Internet 网关,且受租户权限、数据网关配置影响。对于 SharePoint 列表,Power Query 会调用 REST API 获取数据;对于 Azure Blob,需要提供存储账户名称和密钥。

常见连接问题与排查清单

问题现象可能原因排查方法
无法连接 SQL Server端口未开放、SQL 服务未启动、账号权限不足使用 SSMS 测试连接;检查防火墙规则
MySQL 驱动缺失未安装 Connector/ODBC 驱动下载安装对应版本驱动,重启 Power BI
SharePoint 列表加载失败权限不足、列表名称变更、网关未配置检查 Office 365 账号权限;确认列表 URL
数据刷新超时数据量过大、网关网络不稳定优化查询、增加超时时间设置
CSV 乱码文件编码非 UTF-8在 Power Query 中手动指定“文件原始格式”为 GBK
风险提示:在连接云端数据源时,务必注意数据安全。不要在共享看板中明文存储数据库密码。建议使用 Power BI 的“数据源凭据”管理功能,将敏感信息加密存储,并设置基于角色的访问控制。

案例拆解:SharePoint 列表连接故障处理

某互联网公司使用 SharePoint 列表维护项目任务清单,需要将其导入 Power BI 制作进度看板。连接时提示“无法刷新预览”。排查过程:

  1. 检查账号权限:确认当前用户对列表有“读取”权限。
  2. 验证 URL 正确性:在浏览器中打开列表,复制完整 URL 到连接器。
  3. 检查网关状态:由于公司启用了混合部署,需要安装并配置本地数据网关。
  4. 查看错误日志:在“选项与设置” → “数据源设置”中查看详细错误信息,发现是 OAuth 令牌过期。

最终通过重新登录 Office 365 账号并刷新令牌解决。此案例表明:云端连接故障的排查应遵循“权限 → 网络 → 凭据 → 网关”的顺序,避免盲目重装驱动。

3.4 数据导入后的验证与总结复盘

核心原理

数据导入不是终点,而是起点。导入后必须进行 数据质量验证,包括行数核对、列完整性检查、重复值检测、异常值筛查。Power BI 的“数据视图”和“Power Query 的列质量”功能可辅助完成这些检查。同时,建议建立“数据源文档”,记录每个表的来源、刷新频率、清洗规则和负责人,便于后期维护。

验证清单

  • 行数是否与源系统一致(或符合预期过滤条件)。
  • 关键字段(如订单号、日期)是否有空值。
  • 数值字段的求和、平均值是否在合理范围内。
  • 日期字段是否识别为日期类型,而非文本。
  • 是否存在重复记录,是否需要去重。
总结复盘:数据获取与连接的核心能力在于“理解数据源特性”和“掌握连接器配置”。建议每次导入新数据源时,先花 5 分钟在 Power Query 中检查“数据预览”和“列类型”,再决定加载方式。对于高频使用的数据源,可以保存为 数据源模板(.pq 文件),实现一键复用。

通过本章的学习,你已经掌握了从文件、数据库和云端导入数据的完整路径,并了解了常见连接问题的排查思路。在实际项目中,请务必养成“先预览、再清洗、后加载”的习惯,这将为后续的数据建模和看板搭建打下坚实基础。