总结
项 | 描述 |
---|---|
发布状态 | 正式发布 |
产品 | Excel Power BI (语义模型) Power BI (数据流) Fabric(数据流 Gen2) Power Apps(数据流) Dynamics 365 Customer Insights 分析服务 |
支持的身份验证类型 | 数据库/基本(用户名/密码) Windows操作系统 组织帐户(如果指定的服务器支持它) 服务主体 |
M 函数参考 | Sql.Database Sql.Databases |
注意
由于部署计划和主机特定的功能,某些功能可能存在于一个产品中,但不是其他功能。
支持的功能
- 进口
- DirectQuery (Power BI 语义模型)
- 高级选项
- 命令超时(分钟)
- 本机 SQL 语句
- 关系列
- 使用完整层次结构导航
- SQL Server 故障转移支持
从 Power Query Desktop 连接到 SQL Server 数据库
若要建立连接,请执行以下步骤:
在连接器选择中选择 SQL Server 数据库 选项。 有关详细信息,请转到在何处获取数据。
在显示的 SQL Server 数据库 对话框中,提供服务器和数据库的名称(可选)。
选择 导入 或 DirectQuery 数据连接模式(仅限 Power BI Desktop)。
选择“确定”。
如果第一次连接到此数据库,请选择身份验证类型,输入凭据,然后选择要向其应用身份验证设置的级别。 然后选择 连接。
注意
如果未加密连接,系统会提示你使用以下对话框。
选择“确定”以使用未加密的连接连接到数据库,或按照这些说明设置到 SQL Server 的加密连接。 此外,当使用自签名证书为 SQL 服务器启用加密时,请查看第 节,以便将 SQL 服务器添加到 Power Query Desktop 客户端的信任列表中。
在 导航器中,选择您所需的数据库信息,然后选择 加载 以加载数据,或者选择 转换数据 在 Power Query 编辑器中继续转换数据。
从 Power Query Online 连接到 SQL Server 数据库
若要建立连接,请执行以下步骤:
在连接器选择中选择 SQL Server 数据库 选项。 有关详细信息,请参见 获取数据的位置。
在显示的 SQL Server 数据库 对话框中,提供服务器和数据库的名称(可选)。
如果 SQL Server 未联机,请选择本地数据网关。 此外,如果将端口与服务器名称一起使用,请使用值
servername*
作为连接设置中的服务器名称。如果首次连接到此数据库,请选择身份验证类型并输入凭据。
如果未加密连接,并且连接对话框包含 “使用加密连接” 复选框,请清除该复选框。
选择“下一步”以继续。
在 导航器中,选择所需的数据,然后选择 转换数据。
使用高级选项进行连接
Power Query Desktop 和 Power Query Online 都提供了一组高级选项,可根据需要添加到查询。 下表列出了可在 Power Query Desktop 和 Power Query Online 中设置的所有高级选项。
高级选项 | 描述 |
---|---|
命令超时(分钟) | 如果连接持续时间超过 10 分钟(默认超时),则可以输入另一个值(以分钟为单位),使连接保持打开时间更长。 |
SQL 语句 | 有关信息,请转到使用本机数据库查询从数据库导入数据。 |
包含关系列 | 如果选中,则包含可能与其他表格有关系的列。 如果清除此框,则看不到这些列。 |
使用完整层次结构导航 | 如果选中,导航器将显示要连接到的数据库中表的完整层次结构。 如果清除,导航器仅显示其列和行包含数据的表。 |
启用 SQL Server 故障转移支持 | 如果选中此选项,当 SQL Server 故障转移组 中的节点 不可用时,Power Query 将在发生故障转移时从该节点转移到另一节点。 如果清除,则不会发生故障转移。 此选项仅在 Power Query Online 中可用。 |
启用跨数据库折叠 | 此选项仅在 Power Query Online 中可用。 |
选择所需的高级选项后,请在 Power Query Desktop 中选择 “确定”,或者在 Power Query Online 中选择 “下一”以连接到 SQL Server 数据库。
局限性
客户端上不信任 SQL Server 证书(Power BI Desktop 或本地数据网关)
使用本地数据网关或 Power BI Desktop 与本地 SQL Server 建立连接并且 SQL Server 使用自签名证书时,Fabric 语义模型或数据流的刷新作可能会失败,并显示以下错误消息:
Microsoft SQL: A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - The certificate chain was issued by an authority that is not trusted.)
若要排查使用本地数据网关时的此错误,请使用以下步骤更改网关配置以更新 SqlTrustedServers
设置:
在安装本地数据网关的本地计算机上,导航到 C:\Program Files\On-premises data gateway。
创建名为 Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config的配置文件的备份。
打开原始 Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config 配置文件并找到
SqlTrustedServers
条目。使用要信任和连接到的 SQL Server 的名称更新
SqlTrustedServers
值。该值包含以逗号分隔的服务器名称列表,并支持 * 作为通配符。 因此,例如,在以下示例中:
<setting name="SqlTrustedServers" serializeAs="String"> <value>contososql*,mysvr</value> </setting>
值
contososql*,mysvr
匹配contososql6
、contososqlazure
和mysvr
,但不匹配mysvr.microsoft.com
。
若要在使用 Power BI Desktop 时排查此错误,请修改环境变量的值 PBI_SQL_TRUSTED_SERVERS
以包含 SQL Server。 支持的值与网关配置概述的值相同(如上述步骤 4 中所述)。
若要从 Power BI Desktop 连接到 SQL Server 以及从 2024 年 2 月或更高版本开始的本地数据网关版本,请遵循以下选项之一:
- 按照前面提到的解决方案添加环境变量
PBI_SQL_TRUSTED_SERVERS
。 - 要求 SQL 管理员从已知证书颁发机构获取证书。
- 更改网关配置文件上的设置“
SqlTrustedServers
”。
Always Encrypted 列
Power Query 不支持“Always Encrypted”列。
Microsoft Entra ID 身份验证
仅当指定的服务器还支持Microsoft Entra ID 身份验证时,SQL Server 连接器才支持 Microsoft Entra ID(组织帐户)身份验证。 否则,可能会遇到 The OAuth authentication method isn't supported in this data source
错误。
在 Power BI 服务中,Microsoft Entra ID 身份验证方法显示为 OAuth2
。