SQLBrowseConnect

SQLBrowseConnect 使用可分为三个级别的连接信息的关键字。 对于每个关键字,下表指示是否返回有效值列表以及关键字是否可选。

级别 1

关键字 返回的列表? 是否可选? DESCRIPTION
DSN SQLDataSources 返回的数据源的名称。 如果使用 DRIVER 关键字,则无法使用 DSN 关键字。
司机 微软?? SQL Server Native Client ODBC 驱动程序名称为 {SQL Server Native Client 11}。 如果使用 DSN 关键字,则无法使用 DRIVER 关键字。

二级

关键字 返回的列表? 是否可选? DESCRIPTION
服务器 是的 数据源所在的网络上的服务器的名称。 术语“(local)”可以输入为服务器,在这种情况下,可以使用 SQL Server 的本地副本,即使这是非网络版本也是如此。
用户唯一标识 (UID) 是的 用户登录 ID。
PWD 是(取决于用户) 用户指定的密码。
应用程序 是的 调用 SQLBrowseConnect 的应用程序的名称。
WSID 是的 工作站 ID。 通常,这是运行应用程序的计算机的网络名称。

级别 3

关键字 返回的列表? 是否可选? DESCRIPTION
数据库 是的 是的 SQL Server 数据库的名称。
语言 是的 是的 SQL Server 使用的国家/地区语言。

SQLBrowseConnect 忽略 ODBC 数据源定义中存储的数据库和 LANGUAGE 关键字的值。 如果传递给 SQLBrowseConnect 的连接字符串中指定的数据库或语言无效, SQLBrowseConnect 将返回SQL_NEED_DATA和级别 3 连接属性。

以下属性通过调用 SQLSetConnectAttr 来设置,确定 SQLBrowseConnect 返回的结果集。

特征 DESCRIPTION
SQL_COPT_SS_BROWSE_CONNECT 如果它设置为 SQL_MORE_INFO_YES,SQLBrowseConnect 将返回一个扩展的服务器属性字符串。

下面是 SQLBrowseConnect:ServerName\InstanceName 返回的扩展字符串的示例;Clustered:No;版本:8.00.131

在此字符串中,分号分隔有关服务器的各种信息片段。 使用逗号分隔不同的服务器实例。
SQL_COPT_SS_BROWSE_SERVER 如果指定了服务器名称, SQLBrowseConnect 将返回指定服务器的信息。 如果SQL_COPT_SS_BROWSE_SERVER设置为 NULL,SQLBrowseConnect 将返回域中所有服务器的信息。

由于网络问题, SQLBrowseConnect 可能不会收到来自所有服务器的及时响应。 因此,返回的服务器列表因每个请求而异。
SQL_COPT_SS_BROWSE_CACHE_DATA 当SQL_COPT_SS_BROWSE_CACHE_DATA属性设置为SQL_CACHE_DATA_YES时,当缓冲区长度不足以保存结果时,可以提取区块中的数据。 此长度在 BUFFERLength 参数中指定为 SQLBrowseConnect。

当有更多数据可用时,将返回SQL_NEED_DATA。 当没有更多要检索的数据时,将返回SQL_SUCCESS。

默认值为SQL_CACHE_DATA_NO。

SQLBrowseConnect 对高可用性、灾难恢复的支持

有关使用 SQLBrowseConnect 连接到 AlwaysOn 可用性组群集的详细信息,请参阅 SQL Server Native Client Support for High Availability, Disaster Recovery

SQLBrowseConnect 对服务主体名称的支持 (SPN)

打开连接后,SQL Server Native Client 将SQL_COPT_SS_MUTUALLY_AUTHENTICATED并SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD用于打开连接的身份验证方法。

有关 SPN 的详细信息,请参阅 客户端连接(ODBC)中的服务主体名称(SPN)。

更改历史记录

更新的内容
记录SQL_COPT_SS_BROWSE_CACHE_DATA。

另请参阅

SQLBrowseConnect 函数
ODBC API 实现细节