

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

# 使用 Amazon Q Developer 轉換 Java 應用程式中的內嵌 SQL
<a name="transform-sql"></a>

IDE 中用於程式碼轉換的 Amazon Q Developer 代理程式可協助您將內嵌 SQL 轉換為使用 AWS Database Migration Service (AWS DMS) 完成 Oracle 到 PostgreSQL 資料庫遷移。

AWS DMS 是一種雲端服務，可讓您遷移關聯式資料庫、資料倉儲、NoSQL 資料庫和其他類型的資料存放區。 AWS DMS 中的 DMS 結構描述轉換可協助您轉換可套用至目標資料庫的資料庫結構描述和程式碼物件。如需詳細資訊，請參閱*AWS Database Migration Service 《 使用者指南*》中的[什麼是 AWS Database Migration Service？](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html)。

當您使用 AWS DMS 和 DMS 結構描述轉換來遷移資料庫時，您可能需要將應用程式中的內嵌 SQL 轉換為與目標資料庫相容。您可以在 IDE 中使用 Amazon Q 自動執行轉換，而不須手動轉換。Amazon Q 會使用 DMS 結構描述轉換的中繼資料，將應用程式中的內嵌 SQL 轉換為與目標資料庫相容的版本。

目前，Amazon Q 可以轉換 Java 應用程式中的 SQL，以將 Oracle 資料庫移轉至 PostgreSQL。如果您的應用程式包含 Oracle SQL 陳述式，您就會在 IDE 中看到轉換 SQL 程式碼的選項。如需詳細資訊，請參閱先決條件。

## 步驟 1：事前準備
<a name="sql-transform-prereqs"></a>

繼續進行之前，請確定您已完成[在 IDE 中設定 Amazon Q ](q-in-IDE-setup.md)中的步驟。

在您開始程式碼轉換任務以進行 SQL 轉換之前，務必確定符合以下先決條件：
+ 您要將具有內嵌 SQL 的 Java 應用程式從 Oracle 資料庫移轉至 PostgreSQL 資料庫。您的應用程式必須包含 Oracle SQL 陳述式，才能符合轉換的資格。
+ 您已完成使用 AWS DMS 結構描述轉換來轉換資料庫結構描述的程序。如需詳細資訊，請參閱《資料庫移轉指南》**中的[使用 DMS 結構描述轉換將 Oracle 資料庫移轉至 Amazon RDS for PostgreSQL](https://docs.aws.amazon.com/dms/latest/sbs/schema-conversion-oracle-postgresql.html)。
+ 結構描述轉換完成後，您已從 DMS AWS 主控台下載遷移專案檔案。

## 步驟 2：設定應用程式
<a name="sql-transform-configure"></a>

若要轉換您的內嵌 SQL 程式碼，您的 Java 專案必須至少包含一個 `.java` 檔案。

如果您使用 JetBrains IDE，則必須將「專案結構」設定中的 SDK 欄位設定為適用的 JDK。如需設定「專案結構」設定的相關資訊，請參閱 JetBrains 文件中的[專案結構設定](https://www.jetbrains.com/help/idea/project-settings-and-structure.html)。

## 步驟 3：轉換內嵌 SQL
<a name="convert-sql"></a>

若要將 Java 應用程式中的內嵌 SQL 程式碼轉換成與 PostgreSQL 目標資料庫相容的格式，請完成下列步驟：

1. 在安裝 Amazon Q 所在的 IDE 中，開啟包含您需要轉換之內嵌 SQL 的 Java 程式碼基底。

1. 選擇 Amazon Q 圖示以開啟聊天面板。

1. 在聊天面板中要求 Amazon Q 轉換您的應用程式。

1. 如果您的 Java 應用程式符合 SQL 轉換的資格，Amazon Q 會提示您選擇要執行的轉換類型。輸入 **SQL conversion**。

1. Amazon Q 會提示您，上傳您從 Amazon S3 擷取的結構描述中繼資料檔案。在聊天中，Amazon Q 會提供擷取檔案的指示。

1. Amazon Q 會提示您提供包含內嵌 SQL 的專案，以及資料庫結構描述檔案。在聊天面板中，從下拉式功能表選擇適當的檔案。

1. 確認 Amazon Q 從資料庫結構描述擷取的詳細資訊正確無誤。

1. Amazon Q 會開始轉換您的 SQL 程式碼。這個過程可能需要幾分鐘的時間。

1. Amazon Q 轉換 SQL 程式碼後，會提供差異內容，其中包含對檔案所做的任何更新。檢閱差異中的變更，然後接受變更以更新程式碼。

   Amazon Q 還會提供轉換摘要，其中包含其所做變更的詳細資訊。

1. 更新程式碼後，返回 AWS DMS 主控台，確認新的 SQL 與遷移的資料庫相容。