使用 ODBC 连接到 Azure 数据资源管理器

开放式数据库连接 (ODBC) 是一种广泛接受的应用程序编程接口 (API),适用于数据库访问。 Azure 数据资源管理器与一部分 SQL Server 通信协议 (MS-TDS) 的兼容。 这种兼容性支持将适用于 SQL Server 的 ODBC 驱动程序与 Azure 数据资源管理器结合使用。

因此,可以从任何配备了 SQL Server ODBC 驱动程序支持的应用程序建立与 Azure 数据资源管理器的连接。

或者,请按照步骤配置 ODBC 数据源

注意

建议尽可能为 Azure 数据资源管理器使用专用连接器。 有关可用连接器的列表,请参阅连接器概述

先决条件

配置 ODBC 数据源

若要使用适用于 SQL Server 的 ODBC 驱动程序配置 ODBC 数据源,请执行以下操作:

  1. 在 Windows 中搜索“ODBC 数据源”, 打开 ODBC 数据源桌面应用。

  2. 选择添加

    Add data source.

  3. 选择“ODBC Driver 17 for SQL Server”,然后选择“完成”。

    Select driver.

  4. 输入连接的名称和说明以及要连接到的群集,然后选择“下一步” 。 群集 URL 应采用 <ClusterName>.<Region>.kusto.chinacloudapi.cn 格式。

    注意

    输入群集 URL 时,不要包含前缀“https://”。

    Select server.

  5. 选择“Active Directory 集成”,然后选择“下一步”。

    Active Directory Integrated.

  6. 选择包含示例数据的数据库,然后选择“下一步”。

    Change default database.

  7. 在下一屏幕中将所有选项保留为默认设置,然后选择“完成”。

  8. 选择“测试数据源” 。

    Test data source.

  9. 验证测试是否成功,然后选择“确定”。 如果测试不成功,请检查在前面的步骤中指定的值,并确保有足够的权限连接到群集。

    Test succeeded.

使用 ODBC 数据源

在支持 ODBC 连接的应用程序中,可以使用以下格式的连接字符串连接到 Azure 数据资源管理器:

"Driver={ODBC Driver 17 for SQL Server};Server=mykustocluster.kusto.chinacloudapi.cn;Database=mykustodatabase;Authentication=ActiveDirectoryIntegrated"

注意

Azure 数据资源管理器将字符串值视为 NVARCHAR(MAX),这可能不适用于某些 ODBC 应用程序。 使用连接字符串中的 Language 参数将数据强制转换为 NVARCHAR(n)。 例如,Language=any@MaxStringSize:5000 会将字符串编码为 NVARCHAR(5000)。 有关详细信息,请参阅优化选项

应用程序身份验证

若要将应用程序主体身份验证与 ODBC 配合使用,必须提供 Microsoft Entra 租户 ID。 可以在连接字符串、Windows 注册表或 odbc.ini 文件中设置此配置。 请参阅以下选项卡中的示例。 有关详细信息,请参阅优化选项

在连接字符串中使用 Language=any@AadAuthority:<aad_tenant_id> 设置应用程序主体。 将 <aad_tenant_id><aad_application_id><aad_application_secret> 分别替换为 Microsoft Entra 租户 ID、Microsoft Entra 应用程序 ID 和 Microsoft Entra 应用程序机密。

"Driver={ODBC Driver 17 for SQL Server};Server=<adx_cluster_name>.<region_name>.kusto.chinacloudapi.cn;Database=<adx_database_name>;Authentication=ActiveDirectoryServicePrincipal;Language=any@AadAuthority:<aad_tenant_id>;UID=<aad_application_id>;PWD=<aad_application_secret>"