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

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

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

或者,按照步骤使用 ODBC 连接到群集

注意

建议尽可能使用专用连接器。 有关可用连接器的列表,请参阅连接器概述

先决条件

使用 ODBC 连接到群集

可以通过以下方式连接到群集。

在支持 ODBC 连接的应用程序中,可以使用以下格式的连接字符串连接到你的群集:

"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>"