SQLGetConnectAttr

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsAnalytics Platform System (PDW)

SQL Server Native Client ODBC 驱动程序定义特定于驱动程序的连接属性。 SQLGetConnectAttr 可以使用某些属性,函数用于报告其当前设置。 在建立连接或使用 SQLSetConnectAttr 设置属性之前,无法保证为这些属性报告的值。

本主题列出只读属性。 有关其他 SQL Server Native Client ODBC 驱动程序特定的连接属性的信息,请参阅 SQLSetConnectAttr

SQL_COPT_SS_CONNECTION_DEAD

SQL_COPT_SS_CONNECTION_DEAD 属性报告与服务器的连接的状态。 驱动程序将查询网络,以获得连接的当前状态。

注意

标准 ODBC 连接属性 SQL_ATTR_CONNECTION_DEAD 返回连接的最近状态。 这可能不是当前连接状态。

说明
SQL_CD_TRUE 与服务器的连接已丢失。
SQL_CD_FALSE 连接已打开,可以用于执行语句处理。

SQL_COPT_SS_CLIENT_CONNECTION_ID

SQL_COPT_SS_CLIENT_CONNECTION_ID 属性检索客户端连接 ID,该属性可用于查找:

  • XEvents 日志中的诊断信息(如果启用)。

  • 连接环形缓冲区中的连接错误信息。

  • 数据访问跟踪日志中的诊断信息(如果启用)。

有关详细信息,请参阅 访问扩展事件日志中的诊断信息

说明
SQL_ERROR 连接失败。
SQL_SUCCESS 连接成功。 将在输出缓冲区中找到客户端连接 ID。

SQL_COPT_SS_PERF_DATA

SQL_COPT_SS_PERF_DATA 属性返回包含当前驱动程序性能统计信息的 SQLPERF 结构的指针。 如果未启用性能日志记录,SQLGetConnectAttr 将返回 NULL。 驱动程序不会动态更新 SQLPERF 结构中的统计信息。 每次需要刷新性能统计信息时,调用 SQLGetConnectAttr

说明
Null 未启用性能记录。
任何其他值 SQLPERF 结构的指针。

SQL_COPT_SS_PERF_QUERY

如果启用对长时间运行查询的记录,则 SQL_COPT_SS_PERF_QUERY 属性返回 TRUE。 如果查询记录不处于活动状态,则请求返回 FALSE。

SQL_COPT_SS_USER_DATA

SQL_COPT_SS_USER_DATA 属性检索用户数据指针。 用户数据存储在客户端拥有的内存中,并在每次连接时进行记录。 如果尚未设置用户数据指针,则返回 SQL_UD_NOTSET(NULL 指针)。

说明
SQL_UD_NOTSET 未设置用户数据指针。
任何其他值 用户数据的指针。

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

SQLGetConnectAttr 可用于查询SQL_COPT_SS_SERVER_SPN、SQL_COPT_SS_FAILOVER_PARTNER_SPN、SQL_COPT_SS_MUTUALLY_AUTHENTICATED和SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD的新连接属性的值。 (SQLGetConnectOption 也可用于查询这些值。)

SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD 仅对使用 Windows 身份验证的打开的连接可用。

如果尚未设置 SQL_COPT_SS_SERVER_SPN 或 SQL_COPT_SS_FAILOVER_PARTNER,则返回默认值(空字符串)。

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

另请参阅

SQLGetConnectAttr 函数
ODBC API 实现细节
SET QUOTED_IDENTIFIER (Transact-SQL)
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)