ODBC

总结

说明
发布状态 正式版
Products Excel
Power BI(数据集)
Power BI(数据流)
Fabric (数据流 Gen2)
Power Apps(数据流)
Dynamics 365 Customer Insights
Analysis Services
支持的身份验证类型 数据库 (用户名/密码)
Windows
默认或自定义
函数参考文档 Odbc.DataSource
Odbc.Query

注意

由于部署计划和特定于主机的功能,某些功能可能存在于一个产品中,但其他功能不存在。

先决条件

在开始之前,请确保已在 Windows ODBC 数据源管理员中正确配置连接。 此处的确切过程取决于驱动程序。

支持的功能

  • 导入
  • 高级选项
    • 连接字符串(非凭据属性)
    • SQL 语句
    • 支持的行减少子句

从 Power Query Desktop 连接到 ODBC 数据源

请执行以下步骤来建立连接:

  1. 在“获取数据”选择中选择 ODBC 选项。

  2. 在“ 从 ODBC”中,从“数据源名称 (DSN) ”下拉框中 ,选择数据源名称 (DSN) 。 在此示例中,使用 SQL Server Database 的 DSN 名称。

    Power Query Desktop 中的 ODBC 连接生成器。

    还可以选择“ 高级”选项 以输入更多可选连接信息。 详细信息: 使用高级选项进行连接

  3. 完成后,选择“确定”。

  4. 如果这是你第一次连接到此数据库,请选择身份验证类型并在出现提示时输入凭据。

    Power Query Desktop 中的 ODBC 身份验证

    可用的身份验证类型包括:

    • 默认或自定义:如果使用配置了用户名和密码的 DSN,如果未指定任何凭据,请选择此身份验证类型。 或者,如果需要将凭据作为连接字符串属性包含在内。
    • Windows:如果要使用 Windows 身份验证 进行连接,请选择此身份验证类型。 (可选)包括所需的任何连接字符串属性。
    • 数据库:选择此身份验证类型以使用用户名和密码通过 ODBC 驱动程序访问数据源。 (可选)包括所需的任何连接字符串属性。 这是默认选项。

    详细信息: 使用数据源进行身份验证

  5. 完成后,选择“ 连接”。

  6. 导航器中,选择所需的数据库信息,然后选择“加载”以加载数据或“转换数据”以继续转换Power Query 编辑器中的数据。

    导航

从 Power Query Online 连接到 ODBC 数据源

请执行以下步骤来建立连接:

  1. “数据源 ”页中,选择“ ODBC”。

  2. 在 ODBC 页中,输入 ODBC 连接字符串。 在以下示例中,连接字符串为 dsn=SQL Server Database

    ODBC 页的图像,其中连接字符串设置为 SQL Server 数据库

  3. 如果需要,请在数据网关中选择本地 数据网关

  4. 选择要登录的身份验证类型,然后输入凭据。

  5. 选择“下一步”。

  6. “导航器”中,选择所需的数据库信息,然后选择“转换数据”以继续转换Power Query 编辑器中的数据。

使用高级选项进行连接

Power Query提供了一组高级选项,可根据需要将这些选项添加到查询。

ODBC 高级选项

高级选项 说明
连接字符串(非凭据属性) 提供一个可选连接字符串,可在 Power BI Desktop 中替代数据源名称 (DSN) 选择。 如果 数据源名称 (DSN) 设置为 “无” () ,则可以在此处输入连接字符串。 例如,以下连接字符串有效: dsn=<myDSN>driver=<myDriver>;p ort=<myPortNumber>;server=<myServer>;d atabase=<myDatabase>;。 若要转义特殊字符,请使用 { } 字符。 连接字符串的键因不同 ODBC 驱动程序而异。 有关有效连接字符串的详细信息,请咨询 ODBC 驱动程序提供程序。
SQL 语句 根据驱动程序的功能提供 SQL 语句。 请向供应商询问详细信息,或转到 使用本机数据库查询从数据库导入数据
支持的行减少子句 启用 对 Table.FirstN 的折叠支持。 选择“ 检测 ”以查找支持的行减少子句,或者从 TOP、LIMIT 和 OFFSET、LIMIT 或 ANSI SQL 兼容) (下拉列表选项之一中进行选择。 使用本机 SQL 语句时,此选项不适用。 仅在 Power Query Desktop 中可用。

已知问题和限制

连接字符串属性

如果在 ODBC 连接字符串中指定了 DSN,则不包括 DSN 规范后的属性。 如果要使用其他属性,请在 DSN 本身(而不是连接字符串中)中更新它们。