

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon Athena JDBC 3.x 版本備註
<a name="jdbc-v3-driver-release-notes"></a>

這些版本備註詳細說明了 Amazon Athena JDBC 3.x 驅動器中改進和修正。

## 3.7.0
<a name="jdbc-v3-driver-release-notes-2025-11-21"></a>

 版 2025-11-21

### 改進
<a name="jdbc-v3-driver-release-notes-2025-11-21-improvements"></a>
+ **瀏覽器 OIDC 可信任身分傳播身分身分驗證外掛程式** – 新增了新的身分驗證外掛程式，可使用 OpenID Connect (OIDC) 身分提供者進行無縫的瀏覽器型身分驗證。此外掛程式會透過預設瀏覽器處理完整的 OAuth 2.0 流程、自動擷取 JSON Web Token (JWT)，並與信任的身分傳播整合。它專為單一使用者桌面環境而設計，相較於手動 JWT 處理，可提供更簡化的身分驗證體驗。如需受信任身分傳播的詳細資訊，請參閱[什麼是受信任身分傳播？](https://docs.aws.amazon.com/singlesignon/latest/userguide/trustedidentitypropagation-overview.html)。

### 修正項目
<a name="jdbc-v3-driver-release-notes-2025-11-21-fixes"></a>
+ **增強型時間戳記精確度支援** – 驅動程式現在完全支援從 Athena 查詢透過 `getTimestamp()`方法傳回的時間戳記值中的毫秒和奈秒精確度。
+ **改善複雜類型處理** – 修正在 `DatabaseMetaData#getColumns`和一般中繼資料操作中剖析巢狀資料類型 （陣列、結構和映射） 的問題，確保複雜資料結構的類型資訊準確。
+ **增強型錯誤記錄** – 改善 S3 中繼資料擷取失敗的記錄，提供更清楚的錯誤訊息和更好的診斷資訊。

## 3.6.0
<a name="jdbc-v3-driver-release-notes-2025-09-10"></a>

 版 2025-09-10

### 改進
<a name="jdbc-v3-driver-release-notes-2025-09-10-improvements"></a>
+ **JWT 可信身分傳播身分驗證外掛程式** – 新增了新的身分驗證外掛程式，可支援 JWT 可信身分傳播與 JDBC 驅動器的整合。此身分驗證類型允許您使用從外部身分提供者獲得的 JSON Web Token (JWT) 作為連線參數，向 Athena 進行身分驗證。透過受信任的身分傳播，身分內容會新增至 IAM 角色，以識別請求存取 AWS 資源的使用者。如需有關啟用和使用可信身分傳播的資訊，請參閱[什麼是可信身分傳播？](https://docs.aws.amazon.com/singlesignon/latest/userguide/trustedidentitypropagation-overview.html)。
+ **自訂 SSO OIDC 和 SSO 管理員端點支援** – 新增對 JDBC 驅動器中自訂 SSO OIDC 和 SSO 管理員端點的支援。此增強功能可讓您在 VPC 後方執行 JDBC 時，為 SSO 服務指定自己的端點。
+ **AWS 開發套件版本更新** – 我們已將驅動程式中使用的 AWS 開發套件版本更新至 2.32.16，並已更新 3.6.0 版的專案相依性。

## 3.5.1
<a name="jdbc-v3-driver-release-notes-2025-07-17"></a>

 版 2025-07-17

### 改進
<a name="jdbc-v3-driver-release-notes-2025-07-17-improvements"></a>
+ **記錄功能** – 將日誌層級提升為 `INFO` 並新增資料列計數、位移和物件長度的指標，進而增強 S3 擷取記錄。實作了連線生命週期追蹤，並對整體記錄效能進行了最佳化。
+ **特殊字元處理** – 改善了對結構描述和目錄名稱中 `LIKE` 模式的特殊字元的處理。
+ **連線狀態管理** – 改善了連線狀態管理，即藉由在連線關閉後防止 API 呼叫，以及在關閉期間新增查詢操作的安全檢查，進而避免潛在錯誤。

### 修正項目
<a name="jdbc-v3-driver-release-notes-2025-07-17-fixes"></a>
+ **DDL 查詢中繼資料** – 修正了 DDL 查詢中繼資料處理的 `NoSuchKeyFound` 問題。

## 3.5.0
<a name="jdbc-v3-driver-release-notes-2025-03-18"></a>

2025-03-18 發布

### 改進
<a name="jdbc-v3-driver-release-notes-2025-03-18-improvements"></a>
+ **結果組態參數** – 新增了對兩個新連線參數 `ExpectedBucketOwner` 和 `AclOption` 的支援。如需詳細資訊，請參閱[結果組態參數](jdbc-v3-driver-advanced-connection-parameters.md#jdbc-v3-driver-result-config)。
+ **AWS SDK 版本** – 驅動程式中使用的 AWS SDK 版本已更新至 2.30.22。

## 3.4.0
<a name="jdbc-v3-driver-release-notes-2025-02-18"></a>

2025-02-18 發布

### 改進
<a name="jdbc-v3-driver-release-notes-2025-02-18-improvements"></a>
+ **結果擷取程式** – 驅動器現在會自動選取下載查詢結果的最快速方法。如此一來，在大多數情況下都無需手動設定擷取程式。如需詳細資訊，請參閱[結果擷取參數](jdbc-v3-driver-advanced-connection-parameters.md#jdbc-v3-driver-result-fetching-parameters)。

### 修正項目
<a name="jdbc-v3-driver-release-notes-2025-02-18-fixes"></a>
+ **ResultSet** – 驅動器現在能夠逐一處理在 S3 上不會產生結果物件的 DDL 陳述式結果集。當 `GetQueryResultsStream` 傳回完全空白的頁面時，它也會傳回空的 `ResultSet` 物件，而不是 null。
+ **ResultsStream** – 結果串流已透過移除不必要的呼叫來進行最佳化，進而計算內部緩衝區中的資料列數。
+ **getTables** – 已根據 `ListTableMetadata` 和 `GetTableMetadata` 回應處理資料表類型，進而最佳化 `GetTables` 呼叫。

## 3.3.0
<a name="jdbc-v3-driver-release-notes-2024-10-30"></a>

 版 2024-10-30

### 改進
<a name="jdbc-v3-driver-release-notes-2024-10-30-improvements"></a>
+ **DataZone 身分驗證** – 新增了對 DataZone 身分驗證外掛程式 `DataZoneIdC` 和 `DataZoneIAM` 的支援。如需詳細資訊，請參閱[DataZone IdC 憑證提供者](jdbc-v3-driver-datazone-idc.md)及[DataZone IAM 憑證提供者](jdbc-v3-driver-datazone-iamcp.md)。
+ **網路逾時** – 現在可以使用 `NetworkTimeoutMillis` 連線參數設定網路逾時。先前，其只能在 `Connection` 物件本身上設定。如需詳細資訊，請參閱[網路逾時](jdbc-v3-driver-other-configuration.md#jdbc-v3-driver-network-timeout)。

### 修正項目
<a name="jdbc-v3-driver-release-notes-2024-10-30-fixes"></a>
+ **S3 空物件處理** – 驅動器現在能在 S3 擷取程式中處理空物件，而不是擲回 Amazon S3 Range Not Satisfiable 例外狀況。
+ **記錄** – 驅動器不會再記錄查詢執行 [...] 請求的訊息項目，但訂閱會在取用查詢結果後取消這則訊息。
+ **空的參數字串** – 驅動器現在能處理連線參數中存在的空字串，就好像參數不存在一樣。這樣一來，即可解決某些 BI 工具因不小心傳遞空字串而導致意外身分驗證嘗試時發生的問題。

## 3.2.2
<a name="jdbc-v3-driver-release-notes-2024-07-29"></a>

 版 2024-07-29

### 改進
<a name="jdbc-v3-driver-release-notes-2024-07-29-improvements"></a>
+ **資料類型映射** – 透過變更驅動器將 `tinyint`、`smallint`、`row` 和 `struct` 資料類型映射至 Java 物件的方式，提高了對 JDBC 規範的合規性。
+ **AWS SDK 版本更新** – AWS 驅動程式中使用的 SDK 版本已更新至 2.26.23。

### 修正項目
<a name="jdbc-v3-driver-release-notes-2024-07-29-fixes"></a>
+ **註解** – 修正了陳述式結尾的行註解問題。
+ **資料庫清單** – 修正了下列問題：當分頁 `ListDatabases` API 傳回的最後一頁為空白時，列出資料庫可能會進入無限迴圈。

## 3.2.1
<a name="jdbc-v3-driver-release-notes-2024-07-03"></a>

 版 2024-07-03

### 改進
<a name="jdbc-v3-driver-release-notes-2024-07-03-improvements"></a>
+ **JWT 憑證提供者** – 新增了對使用者指定的工作階段持續時間的支援。如需詳細資訊，請參閱[角色工作階段持續時間](jdbc-v3-driver-jwt-credentials.md#jdbc-v3-driver-jwt-role-session-duration)。

### 修正項目
<a name="jdbc-v3-driver-release-notes-2024-07-03-fixes"></a>
+ **執行緒集區** – 針對非同步任務，已為每個連線建立一個 `ThreadPoolExecutor`，進而避免使用 `ForkJoin` 集區。
+ **憑證提供者** – 現在會剖析代理主機，以便在為外部 IdP 設定 HTTP 用戶端時取得結構描述和主機。
+ **預設憑證提供者** – 確保用戶端程式碼無法關閉預設憑證提供者。
+ **getColumns** – 修正了 `DatabaseMetaData#getColumns` 方法中的 `ORDINAL_COLUMN` 資料欄屬性問題。
+ **ResultSet** – 新增了對 `Infinity`、`-Infinity`、`NaN` 和 `ResultSet.` 的支援，修正了目錄操作傳回的資料欄類型與已完成查詢的結果集之間的差異。

## 3.2.0
<a name="jdbc-v3-driver-release-notes-2024-02-26"></a>

2024-04-26 發布

### 改進
<a name="jdbc-v3-driver-release-notes-2024-02-26-improvements"></a>
+ **目錄操作效能** – 對於不使用萬用字元的目錄操作，其效能有所提升。
+ **輪詢間隔下限變更** – 已修改輪詢間隔下限預設值，以減少驅動器對 Athena 發出的 API 呼叫次數。仍能盡快偵測到查詢完成。
+ **BI 工具可探索性** – 商業智慧工具能更輕鬆地探索到驅動器。
+ **資料類型映射** – 已改善 Athena `binary`、`array` 和 `struct` DDL 資料類型的資料類型映射。
+ **AWS SDK 版本** – 驅動程式中使用的 AWS SDK 版本已更新至 2.25.34。

### 修正項目
<a name="jdbc-v3-driver-release-notes-2024-02-26-fixes"></a>
+ **聯合目錄資料表清單** – 修正了導致聯合目錄傳回空白資料表清單的問題。
+ **getSchemas** – 修正了導致 JDBC [DatabaseMetaData\$1getSchemas](https://docs.oracle.com/javase/8/docs/api/java/sql/DatabaseMetaData.html#getSchemas--) 方法僅從預設目錄而非所有目錄擷取資料庫的問題。
+ **getColumns** – 修正了使用 Null 目錄名稱呼叫 JDBC [DatabaseMetaData\$1getColumns](https://docs.oracle.com/javase/8/docs/api/java/sql/DatabaseMetaData.html#getColumns-java.lang.String-java.lang.String-java.lang.String-java.lang.String-) 方法時，導致傳回 Null 目錄的問題。

## 3.1.0
<a name="jdbc-v3-driver-release-notes-2024-02-15"></a>

2024-02-15 發布

### 改進
<a name="jdbc-v3-driver-release-notes-2024-02-15-improvements"></a>
+ 對 Microsoft Active Directory Federation Services (AD FS) Windows 整合式身分驗證和表單型身分驗證的支援。
+ 為了與 2.x 版保持回溯相容，現在接受 `awsathena` JDBC 子通訊協定，但會產生廢除警告。請改用 `athena` JDBC 子通訊協定。
+ `AwsDataCatalog` 現在是目錄參數的預設值，而 `default` 是資料庫參數的預設值。這些變更可確保傳回目前目錄和資料庫的正確值，而不是 Null。
+ 為了符合 JDBC 規格，`IS_AUTOINCREMENT` 和 `IS_GENERATEDCOLUMN` 現在會傳回空字串，而不是 `NO`。
+ Athena `int` 資料類型現在會映射至與 Athena 相同的 JDBC 類型 `integer`，而不是 `other`。
+ 當 Athena 的資料欄中繼資料不包含選用 `precision` 和 `scale` 欄位時，驅動器現在會針對 `ResultSet` 資料欄中的對應值傳回零。
+  AWS SDK 版本已更新至 2.21.39。

### 修正項目
<a name="jdbc-v3-driver-release-notes-2024-02-15-fixes"></a>
+ 修正了與 `GetQueryResultsStream` 相關的問題，即當 Athena 的純文字結果資料欄計數與 Athena 結果中繼資料中的資料欄計數不一致時，會發生例外狀況。

## 3.0.0
<a name="jdbc-v3-driver-release-notes-2023-11-16"></a>

 版 2023-11-16

Athena JDBC 3.x 驅動器是新一代的驅動器，可提供更好的效能和相容性。JDBC 3.x 驅動器支援直接從 Amazon S3 讀取查詢結果，從而可提升應用程式的效能，其中這些應用程式會耗用大量查詢結果。新的驅動器降低了第三方相依性，因此可以更輕鬆地整合 BI 工具與自訂應用程式。