總結
項目 | 描述 |
---|---|
發行狀態 | 一般供應 |
產品 | Excel Power BI (語意模型) Power BI (數據流) Fabric(資料流 Gen2) Power Apps(數據流) Dynamics 365 Customer Insights 分析服務 |
支援的驗證類型 | 資料庫/基本 (使用者名稱/密碼) 窗戶 組織帳戶(如果指定的伺服器支援它) 服務主體 |
M 函式參考 |
Sql.Database Sql.Databases |
注意
某些功能可能會存在於一個產品中,但由於部署排程和主機特定功能,而不存在於其他產品中。
支援的功能
- 進口
- DirectQuery (Power BI 語意模型)
- 進階選項
- 以分鐘為單位的命令逾時
- 原生 SQL 語句
- 關聯性欄位
- 使用完整階層巡覽
- SQL Server 故障轉移支援
從 Power Query Desktop 連線到 SQL Server 資料庫
若要進行連線,請執行下列步驟:
選取連接器選取範圍中的 [SQL Server 資料庫] 選項。 如需詳細資訊,請移至 何處取得資料。
在出現的 [SQL Server 資料庫] 對話框中,提供伺服器和資料庫的名稱(選擇性)。
選取 匯入 或 DirectQuery 數據連線模式(僅限 Power BI Desktop)。
選取 [確定] 。
如果您第一次連線到此資料庫,請選取驗證類型、輸入認證,然後選取要套用驗證設定的層級。 然後點選 [Connect]。
注意
如果未加密連線,系統會提示您輸入下列對話方塊。
選取 [確定] [確定] 以使用未加密的連線來連線到資料庫,或遵循下列 指示 設定 SQL Server 的加密連線。 此外,使用自我簽署憑證啟用 SQL Server 加密時,請檢閱此 一節,將 SQL 伺服器新增至 Power Query Desktop 用戶端的信任清單。
在 Navigator中,選取您想要的資料庫資訊,然後選取 載入 以載入資料,或 轉換資料 繼續在 Power Query 編輯器中轉換資料。
從 Power Query Online 連線到 SQL Server 資料庫
若要進行連線,請執行下列步驟:
在連接器選項中選取 [SQL Server 資料庫] 選項。 如需詳細資訊,請移至 何處取得資料。
在出現的 [SQL Server 資料庫] 對話框中,提供伺服器和資料庫的名稱(選擇性)。
如果 SQL Server 不在在線,請選取內部部署數據閘道。 此外,如果使用埠搭配 servername,請使用值
servername*
作為連線設定中的伺服器名稱。如果您第一次連線到此資料庫,請選取驗證種類並輸入您的認證。
如果未加密連線,且連線對話框包含 [使用加密連線] 複選框,請清除複選框。
選取 下一步 以繼續。
在 Navigator中,選取您需要的數據,然後選取 [轉換數據]。
使用進階選項進行連線
Power Query Desktop 和 Power Query Online 都提供一組進階選項,您可以視需要新增至查詢。 下表列出您可以在Power Query Desktop和Power Query Online 中設定的所有進階選項。
進階選項 | 描述 |
---|---|
命令超時(以分鐘為單位) | 如果您的連線持續超過 10 分鐘(預設逾時),您可以在幾分鐘內輸入另一個值,讓連線保持開啟時間更長。 |
SQL 語句 | 如需詳細資訊,請前往 使用原生資料庫查詢從資料庫匯入資料。 |
包含關聯性欄位 | 如果勾選,則包含可能與其他數據表有關聯性的欄位。 如果清除此方塊,您將看不到那些欄。 |
使用完整階層導航 | 如果核取,[導覽器] 會顯示您要連線之資料庫中數據表的完整階層。 如果過濾,Navigator 只會顯示列和行中含有數據的表格。 |
啟用 SQL Server 故障轉移支援 | 如果勾選選項,當 SQL Server 中的節點 故障轉移群組 無法使用時,Power Query 會在發生故障轉移時自動移動到另一個節點。 如果清除,則不會發生故障轉移。 此選項僅適用於 Power Query Online。 |
啟用跨資料庫合併功能 | 此選項僅適用於 Power Query Online。 |
選取所需的進階選項之後,請在 Power Query Desktop 中選取 [確定],或在 Power Query Online 中 [下一步],以連線到您的 SQL Server 資料庫。
局限性
用戶端(Power BI Desktop 或內部部署資料閘道)不信任 SQL Server 憑證
使用內部部署數據閘道或 Power BI Desktop 建立與內部部署 SQL Server 的連線時,SQL Server 會利用自我簽署憑證,網狀架構語意模型或數據流的重新整理作業可能會失敗,並出現下列錯誤訊息:
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 數據閘道。
備份名為 Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config的組態檔。
開啟原始 Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config 組態檔,並找出
SqlTrustedServers
條目。將
SqlTrustedServers
值更新為需要信任並連線的 SQL 伺服器名稱。值包含以逗號分隔的伺服器名稱清單,並支援 * 當作通配符。 例如,在下列範例中:
<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 Servers。 支援的值與閘道組態中所述的值相同(如上述步驟 4 所述)。
若要從 2024 年 2 月或更新版本開始從 Power BI Desktop 和內部部署數據閘道版本連線到 SQL Server,請遵循下列其中一個選項:
- 請遵循先前所述的解決方案,將環境變數新增
PBI_SQL_TRUSTED_SERVERS
。 - 要求 SQL 系統管理員從已知的證書頒發機構單位取得憑證。
- 變更閘道組態檔上的設定
SqlTrustedServers
。
Always Encrypted 欄位
Power Query 不支援 「永遠加密」數據行。
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
。