getClientConnectionID 方法 (SQLServerConnection)

无论最新连接尝试成功还是失败，都获取该尝试的连接 ID。

# 语法

    public Java.util.UUID SQLServerConnection.getClientConnectionID();

# 返回值

表示最新连接尝试的连接 ID 的 16 字节的 GUID。或者为 NULL（如果在启动连接请求和预登录握手后失败）。

# 异常

SQLServerException

# 注释

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

以下示例显示如何获取连接 ID：

    Connection con = DriverManager.getConnection(connectionUrl);
    UUID id = ((ISQLServerConnection)con).getClientConnectionId();

以下示例显示获取连接 ID 的另一种方法：

    SQLServerConnectionPoolDataSource ds = new SQLServerConnectionPoolDataSource();
    ds.setUser("…");
    ds.setPassword("…");
    ds.setServerName("…");
    PooledConnection pcon= ds.getPooledConnection();
    Connection cn = pcon.getConnection();
    UUID conid = ((ISQLServerConnection)cn).getClientConnectionId();

无论您连接到何种版本的服务器，getClientConnectionID 都有效，但是在 SQL Server 2008 R2 和更早版本中不提供扩展事件日志和连接环形缓冲区中的条目。

如果启用记录连接 ID 的扩展事件，您可以在扩展事件日志中查找连接 ID，以查看失败是否源自服务器。还可以针对某些连接错误在连接环形缓冲区（在 SQL Server 2008 中使用连接环形缓冲区解决连接问题）中查找连接 ID。如果在连接环形缓冲区中找不到连接 ID，可以认为是网络错误。

# 请参阅

SQLServerConnection 类
SQLServerConnection 成员
发送有关本主题的反馈至 Microsoft。

© 2012 Microsoft。保留所有权利。