创建 SQL Server 连接 URI

Microsoft BizTalk Adapter for SQL Server 连接 URI 包含适配器用来与 SQL Server 数据库建立连接的属性。 本主题提供有关 SQL Server 连接 URI 的信息,并提供指向说明如何在不同编程方案中指定 URI 的其他主题的链接。

SQL 适配器的连接 URI

WCF 中典型的终结点地址 URI 表示为:,其中: scheme://hostinfoparams?query_string

  • 方案是该计划的名称。

  • hostinfoparams 是建立与主机的连接所需的信息;例如,服务器名称。

  • query_string是用问号(?)分隔的参数的可选名称值集合。

    SQL 适配器连接 URI 遵循此基本格式,如下所示实现:

  
mssql://[Server_Name[:Portno]]/[Database_Instance_Name]/[Database_Name]?FailoverPartner=[Partner_Server_Name]&InboundId=[Inbound_ID]  

其中, mssql 是 SQL Server 连接 URI 的方案。

下表说明了连接 URI 中包含的属性。

连接 URI 属性 类别 DESCRIPTION
[SERVER_NAME] 主机信息参数 (hostinfoparams) 安装 SQL Server 的服务器的名称。 如果未指定值,适配器将假定服务器名称为“localhost”,并在本地服务器上与 SQL Server 数据库建立连接。
[PORTNO] 主机信息参数 (hostinfoparams) 用于建立连接的端口号。 如果未指定值,适配器将通过默认端口进行连接。
[DATABASE_INSTANCE_NAME] 主机信息参数 (hostinfoparams) 要连接到的 SQL Server 实例的名称。 如果未指定值,适配器将连接到默认数据库实例。
[DATABASE_NAME] 主机信息参数 (hostinfoparams) 要连接到的数据库的名称。 如果未指定值,适配器将连接到默认数据库。
[PARTNER_SERVER_NAME] 查询字符串 如果主 SQL Server 数据库不可用,请连接到备用 SQL Server 数据库,该数据库的名称为故障转移数据库。 有关 SQL Server 的高可用性的详细信息,请参阅 SQL Server 中的数据库镜像
[INBOUND_ID] 查询字符串 用于使连接 URI 唯一的标识符。 如果要为 TypedPolling 入站操作生成元数据,则必须提供此连接参数。 此外,在 BizTalk 应用程序中,如果有多个接收位置轮询同一数据库,则入站 ID 使连接 URI 是唯一的,从而使适配器客户端能够在不同的接收位置上接收来自同一数据库的轮询消息。 有关详细信息,请参阅 使用 BizTalk Server 从 SQL 的多个接收端口接收轮询消息

注释

有关这些连接字符串属性的详细信息,请参阅 SqlConnection.ConnectionString 属性

SQL Server 凭据和连接 URI

SQL 适配器不支持在连接 URI 中指定凭据。 有关在使用 SQL 适配器的应用程序中指定凭据的详细信息,请参阅 保护 SQL 应用程序

在连接 URI 中使用特殊字符

SQL 适配器不支持为任何参数值指定具有特殊字符的连接 URI。 如果连接参数值包含特殊字符,请确保执行以下作之一:

  • 如果使用“添加适配器服务引用插件”或“使用适配器服务外接程序”在 Visual Studio 中指定 URI,则必须在 “URI 属性 ”选项卡中指定它们 as-is,即不使用任何转义字符。 如果直接在 “配置 URI ”字段中指定 URI,并且连接参数包含特殊字符,则必须使用正确的转义字符指定连接参数。

    例如,如果连接 URI 具有具有名称 sql server的参数,则必须将其指定为 sql%20server

  • 如果在 BizTalk Server 管理控制台中创建发送或接收端口时指定 URI,并且连接参数包含特殊字符,则必须使用正确的转义字符指定连接参数。

使用连接 URI 连接到 SQL Server 数据库

下面是 SQL 适配器的示例连接 URI。

mssql://sql_server/sql_server_instance//  

在前面的示例中,“sql_server”是安装 SQL Server 的计算机的名称,而“sql_server_instance”是要连接到的数据库实例的名称。 由于未指定任何数据库名称,适配器将连接到默认数据库。

下面是连接 URI 的示例,其中 SQL Server 数据库安装在 SQL 适配器所在的同一台计算机上。 在此示例中,适配器将连接到本地计算机上的“sql_server_instance”数据库实例中的“my_database”数据库。

mssql://localhost/sql_server_instance/my_database/  

在此示例中,适配器连接到本地计算机上运行的默认实例的默认数据库。

mssql://localhost///  

有关如何在以下情况下指定与 SQL Server 数据库的连接的信息:

另请参阅

开发 SQL 应用程序