

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用转换应用程序 SQL AWS SCT
<a name="CHAP_Converting.App"></a>

当您将数据库架构从一个引擎转换到另一个引擎时，还需要更新应用程序中的 SQL 代码，以便与新数据库引擎 (而非旧引擎) 进行交互。您可以查看、分析、编辑和保存转换后的 SQL 代码。

您可以使用 AWS Schema Conversion Tool (AWS SCT) 在 C\$1\$1、C\$1、Java 或其他应用程序代码中转换 SQL 代码。对于 Oracle 到 PostgreSQL 的转换，你可以 AWS SCT 使用将 SQL\$1Plus 代码转换为 PSQL。此外，对于 Oracle 到 PostgreSQL 的转换，您可以使用 AWS SCT 转换嵌入到 C\$1、C\$1\$1、Java 和 Pro\$1C 应用程序中的 SQL 代码。

**Topics**
+ [转换应用程序 SQL 概述](#CHAP_Converting.App.Overview)
+ [使用在应用程序中转换 SQL 代码 AWS SCT](CHAP_Converting.App.Generic.md)
+ [使用 C\$1 应用程序转换 SQL 代码 AWS Schema Conversion Tool](CHAP_Converting.App.Csharp.md)
+ [使用 C\$1\$1 应用程序转换 SQL 代码 AWS Schema Conversion Tool](CHAP_Converting.App.Cplusplus.md)
+ [使用 Java 应用程序转换 SQL 代码 AWS Schema Conversion Tool](CHAP_Converting.App.Java.md)
+ [使用 Pro\$1C 应用程序转换 SQL 代码 AWS Schema Conversion Tool](CHAP_Converting.App.ProC.md)

## 转换应用程序 SQL 概述
<a name="CHAP_Converting.App.Overview"></a>

要转换应用程序中的 SQL 代码，请执行以下简要步骤：
+ **创建一个应用程序转换项目**：应用程序转换项目是数据库架构转换项目的子级。每个数据库架构转换项目都可以有一个或多个子应用程序转换项目。有关更多信息，请参阅 [在中创建通用应用程序转换项目 AWS SCT](CHAP_Converting.App.Generic.md#CHAP_Converting.App.Project)。
+ **分析和转换 SQL 代码**：可以分析您的应用程序，提取 SQL 代码，并创建一个本地版本的转换后 SQL，以便您查看和编辑。在您做好准备之前，该工具不会更改您的应用程序中的代码。有关更多信息，请参阅 [分析并转换您的 SQL 代码 AWS SCT](CHAP_Converting.App.Generic.md#CHAP_Converting.App.Convert)。
+ **创建应用程序评估报告**：应用程序评估报告可提供关于将应用程序 SQL 代码从源数据库架构转换到目标数据库架构的重要信息。有关更多信息，请参阅 [在中创建和使用 AWS SCT 评估报告 AWS SCT](CHAP_Converting.App.Generic.md#CHAP_Converting.App.AssessmentReport)。
+ **编辑、应用更改并保存转换后的 SQL 代码**：评估报告包含无法自动转换的 SQL 代码项的列表。对于这些项目，您可以手动编辑 SQL 代码以执行转换。有关更多信息，请参阅 [使用编辑和保存转换后的 SQL 代码 AWS SCT](CHAP_Converting.App.Generic.md#CHAP_Converting.App.Edit)。

# 使用在应用程序中转换 SQL 代码 AWS SCT
<a name="CHAP_Converting.App.Generic"></a>

您可以使用转换嵌入 AWS SCT 到应用程序中的 SQL 代码。通用 AWS SCT 应用程序转换器将您的应用程序代码视为纯文本。它会扫描您的应用程序代码并使用正则表达式提取 SQL 代码。该转换器支持不同类型的源代码文件，并且可以处理用任何编程语言编写的应用程序代码。

通用应用程序转换器具有以下限制。它不会深入探讨特定于应用程序编程语言的应用程序逻辑。此外，通用转换器不支持来自不同应用程序对象（例如函数、参数、局部变量等）的 SQL 语句。

要改进应用程序 SQL 代码转换，请使用特定于语言的应用程序 SQL 代码转换器。有关更多信息，请参阅 [C\$1 应用程序中的 SQL 代码](CHAP_Converting.App.Csharp.md)、[Java 中的 SQL 代码](CHAP_Converting.App.Java.md) 和 [Pro\$1C 中的 SQL 代码](CHAP_Converting.App.ProC.md)。

## 在中创建通用应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.Project"></a>

在中 AWS Schema Conversion Tool，应用程序转换项目是数据库架构转换项目的子项目。每个数据库架构转换项目都可以有一个或多个子应用程序转换项目。

**注意**  
AWS SCT 不支持在以下源和目标之间进行转换：  
Oracle 到 Oracle
PostgreSQL 到 PostgreSQL 或 Aurora PostgreSQL
MySQL 到 MySQL
SQL Server 到 SQL Server
Amazon Redshift 到 Amazon Redshift
SQL Server 到 Babelfish
SQL Server 集成服务提供给 AWS Glue
Apache Cassandra 到 Amazon DynamoDB

 使用以下过程创建通用应用程序转换项目。

**创建应用程序转换项目**

1. 在中 AWS Schema Conversion Tool，从 “**应用程序” 菜单上选择 “新建通用****应用程序**”。

   随即出现 **New application conversion project** 对话框。  
![\[“New application conversion project (新应用程序转换项目)”对话框\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/applications-new-project.png)

1. 添加以下项目信息。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/CHAP_Converting.App.Generic.html)

1. 选择**不要将绑定变量转换为 SQL 类型**，以避免将绑定变量类型转换为 SQL 类型。该选项仅适用于 Oracle 到 PostgreSQL 的转换。

   例如，您的源应用程序代码包括以下 Oracle 查询：

   ```
   SELECT * FROM ACCOUNT WHERE id = ?
   ```

   如果选择**不要将绑定变量转换为 SQL 类型**，则 AWS SCT 会按如下所示转换此查询。

   ```
   SELECT * FROM account WHERE id = ?
   ```

   清除**不要将绑定变量转换为 SQL 类型**后， AWS SCT 会将绑定变量类型更改为 `NUMERIC` 数据类型。转换结果如下所示。

   ```
   SELECT * FROM account WHERE id = (?)::NUMERIC
   ```

1. 选择**保留对象名称**，以避免将架构名称添加到已转换对象的名称中。该选项仅适用于 Oracle 到 PostgreSQL 的转换。

   例如，假定您的源应用程序代码包含以下 Oracle 查询。

   ```
   SELECT * FROM ACCOUNT
   ```

   当您选择**保留对象名称**时， AWS SCT 将转换此查询，如下所示。

   ```
   SELECT * FROM account
   ```

   清除**保留对象名称**后， AWS SCT 会将架构名称添加到表的名称中。转换结果如下所示。

   ```
   SELECT * FROM schema_name.account
   ```

   如果您的源代码在对象的名称中包含父对象的名称，则在转换后的代码中 AWS SCT 使用此格式。在这种情况下，请忽略**保留对象名称**选项，因为 AWS SCT 会在转换后的代码中添加父对象的名称。

1. 选择 **OK** 以创建应用程序转换项目。

   随即打开项目窗口。  
![\[项目窗口\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/applications-project-window.png)

## 在中管理应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.Manage"></a>

您可以打开现有的应用程序转换项目并添加多个应用程序转换项目。

在您创建应用程序转换项目时，项目窗口会自动打开。您可以关闭应用程序转换项目窗口，稍后再回来。

**打开现有应用程序转换项目**

1. 在左侧面板中，选择应用程序转换项目节点，然后打开上下文（右键单击）菜单。

1. 选择**管理应用程序**。

**添加其他应用程序转换项目**

1. 在左侧面板中，选择应用程序转换项目节点，然后打开上下文（右键单击）菜单。

1. 选择 **New application**（新建应用程序）。

1. 输入创建新的应用程序转换项目所需的信息。有关更多信息，请参阅 [创建通用应用程序转换项目](#CHAP_Converting.App.Project)。

## 分析并转换您的 SQL 代码 AWS SCT
<a name="CHAP_Converting.App.Convert"></a>

按照以下过程在 AWS Schema Conversion Tool中分析和转换 SQL 代码。

**分析和转换您的 SQL 代码**

1. 打开现有的应用程序转换项目，然后选择**分析**。

   AWS SCT 分析您的应用程序代码并提取 SQL 代码。 AWS SCT 在 “已解**析的 SQL 脚本” 列表中显示提取的 SQL** 代码。

1. 对于**已解析的 SQL 脚本**，请选择一个项目来查看其提取的 SQL 代码。 AWS SCT 在 “**提取的 SQL 脚本**” 窗格中显示所选项目的代码。

1. 选择 “**转换**”，在 “**提取的 SQL 脚本” 窗格中转换 SQL** 代码。 AWS SCT 将代码转换为与目标数据库兼容的格式。

   您可以编辑转换后的 SQL 代码。有关更多信息，请参阅 [编辑和保存转换后的 SQL 代码](#CHAP_Converting.App.Edit)。  
![\[要分析的 SQL 代码\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/applications-project-analyze.png)

1. 创建应用程序转换评估报告时， AWS SCT 会转换所有提取的 SQL 代码项。有关更多信息，请参阅 [创建和使用评估报告](#CHAP_Converting.App.AssessmentReport)。

## 在中创建和使用 AWS SCT 评估报告 AWS SCT
<a name="CHAP_Converting.App.AssessmentReport"></a>

*应用程序转换评估报告*提供了有关将应用程序 SQL 代码转换为与目标数据库兼容的格式的信息。该报告详细说明了所有提取的 SQL 代码、所有转换的 SQL 代码以及 AWS SCT 无法转换的 SQL 代码的操作项。

### 创建应用程序转换评估报告
<a name="CHAP_Converting.App.AssessmentReport.Create"></a>

使用以下过程创建应用程序转换评估报告。

**创建应用程序转换评估报告**

1. 在应用程序转换项目窗口中，在**操作** 菜单上选择**创建报告**。

   AWS SCT 创建应用程序转换评估报告并在应用程序转换项目窗口中将其打开。

1. 查看 **Summary** 选项卡。

   如下所示的**摘要**选项卡显示了应用程序评估报告中的摘要信息。它显示了已自动转换的 SQL 代码项目及未自动转换的项目。  
![\[“Application Assessment Report Summary (应用程序评估报告摘要)”选项卡\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/applications-summary.png)

1. 选择 **SQL 提取操作**。

   查看 AWS SCT 无法从源代码中提取的 SQL 代码项列表。

1. 选择 **SQL 转换操作**。

   查看 AWS SCT 无法自动转换的 SQL 代码项列表。使用推荐的操作手动转换 SQL 代码。有关如何编辑转换的 SQL 代码的信息，请参阅 [使用编辑和保存转换后的 SQL 代码 AWS SCT](#CHAP_Converting.App.Edit)。

1. （可选）将报告的本地副本另存为 PDF 文件或逗号分隔值（CSV）文件：
   + 选择右上角的**保存为 PDF**，将报告另存为 PDF 文件。

      PDF 文件包含应用程序转换的执行摘要、操作项和建议。
   + 选择右上角的**保存为 CSV**，将报告另存为 CSV 文件。

     CSV 文件包含操作项、推荐的操作以及转换 SQL 代码所需的估计人工操作的复杂性。

## 使用编辑和保存转换后的 SQL 代码 AWS SCT
<a name="CHAP_Converting.App.Edit"></a>

评估报告包含 AWS SCT 无法转换的 SQL 代码项列表。在 “**SQL 转换操作**” 选项卡上为每个项目 AWS SCT 创建一个措施项。对于这些项目，您可以手动编辑 SQL 代码以执行转换。

按照以下过程编辑转换后的 SQL 代码、应用更改，然后进行保存。

**编辑、应用更改并保存转换后的 SQL 代码**

1. 直接在 **Target SQL script** 窗格中编辑转换后的 SQL 代码。如果未显示转换后的代码，您可以单击窗格并开始键入。

1. 编辑完转换后的 SQL 代码，请选择 **Apply**。此时，更改便会保存在内存中，但尚未写入您的文件。

1. 选择 **Save** 将更改保存到文件中。

   当您选择**保存**时，会覆盖您的原始文件。在保存之前复制您的原始文件，以便记录原始应用程序代码。

# 使用 C\$1 应用程序转换 SQL 代码 AWS Schema Conversion Tool
<a name="CHAP_Converting.App.Csharp"></a>

对于 Oracle 到 PostgreSQL 的转换，可以 AWS Schema Conversion Tool 使用AWS SCT() 转换嵌入到 C\$1 应用程序中的 SQL 代码。这个特定的 C\$1 应用程序转换器了解应用程序逻辑。它收集位于不同应用程序对象中的语句，例如函数、参数、局部变量等。

由于这种深入的分析，C\$1 应用程序 SQL 代码转换器比通用转换器的转换结果更好。

## 在中创建 C\$1 应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.Csharp.Create"></a>

您可以仅创建 C\$1 应用程序转换项目，以便将 Oracle 数据库架构转换为 PostgreSQL 数据库架构。请务必在项目中添加包含源 Oracle 架构和目标 PostgreSQL 数据库的映射规则。有关更多信息，请参阅 [在 AWS Schema Conversion Tool 中映射数据类型](CHAP_Mapping.md)。

您可以在单个项目中添加多个应用程序转换 AWS SCT 项目。使用以下过程创建 C\$1 应用程序转换项目。

**创建 C\$1 应用程序转换项目**

1. 创建数据库转换项目，然后添加源 Oracle 数据库。有关更多信息，请参阅[在中启动和管理项目 AWS SCT](CHAP_UserInterface.Project.md)和[将服务器添加到项目中 AWS SCT](CHAP_UserInterface.AddServers.md)。

1. 添加包含源 Oracle 数据库和目标 PostgreSQL 数据库的映射规则。您可以添加目标 PostgreSQL 数据库，也可以在映射规则中使用虚拟的 PostgreSQL 目标数据库平台。有关更多信息，请参阅[在 AWS Schema Conversion Tool 中映射数据类型](CHAP_Mapping.md)和[在 AWS Schema Conversion Tool 中映射到虚拟目标](CHAP_Mapping.VirtualTargets.md)。

1. 在**视图**菜单上，选择**主视图**。

1. 在**应用程序**菜单上选择**新建 C\$1 应用程序**。

   随即出现**创建 C\$1 应用程序转换项目**对话框。  
![\[新 C# 应用程序转换项目对话框\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/csharp-application-new-project.png)

1. 对于**名称**，输入 C\$1 应用程序转换项目名称。每个数据库架构转换项目都可以有一个或多个子应用程序转换项目，因此如果您添加多个项目的话，请选择一个有意义的名称。

1. 对于**位置**，输入您的应用程序源代码的位置。

1. 在源树状图中，选择应用程序所用的架构。确保此架构是映射规则的一部分。 AWS SCT 以粗体突出显示作为映射规则一部分的架构。

1. 选择**确定**以创建 C\$1 应用程序转换项目。

1. 在左侧面板的**应用程序**节点中找到您的 C\$1 应用程序转换项目。

## 转换你的 C\$1 应用程序 SQL 代码 AWS SCT
<a name="CHAP_Converting.App.Csharp.Convert"></a>

将 C\$1 应用程序添加到 AWS SCT 项目后，将此应用程序中的 SQL 代码转换为与目标数据库平台兼容的格式。按照以下过程在 AWS Schema Conversion Tool中分析和转换嵌入 C\$1 应用程序的 SQL 代码。

**转换 SQL 代码**

1. 展开左侧面板中**应用程序**下的 **C\$1** 节点。

1. 选择要转换的应用程序，然后打开上下文（右键单击）菜单。

1.  选择 “**转换**”。 AWS SCT 分析您的源代码文件，确定应用程序逻辑，并将代码元数据加载到项目中。此代码元数据包括 C\$1 类、对象、方法、全局变量、接口等。

   在目标数据库面板中， AWS SCT 创建与源应用程序项目类似的文件夹结构。在这里，您可以查看转换后的应用程序代码。  
![\[要分析的 SQL 代码\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/csharp-applications-project-analyze.png)

1. 保存转换后的应用程序代码。有关更多信息，请参阅 [保存转换后的应用程序代码](#CHAP_Converting.App.Csharp.Save)。

您的 C\$1 应用程序可能包含与不同源数据库交互的 SQL 代码。您可以将其中几个源数据库迁移到 PostgreSQL。在这种情况下，请确保不要转换与已排除在迁移范围之外的数据库交互的 SQL 代码。您可以将 C\$1 应用程序的源文件排除在转换范围之外。为此，请清除要排除在转换范围之外的文件名的复选框。

更改转换范围后， AWS SCT 仍会分析 C\$1 应用程序的所有源文件的 SQL 代码。然后，将您排除在转换范围之外的所有源文件 AWS SCT 复制到目标文件夹。通过此操作，可以在保存转换后的应用程序文件后生成应用程序。

## 使用保存转换后的应用程序代码 AWS SCT
<a name="CHAP_Converting.App.Csharp.Save"></a>

使用以下过程保存转换后的应用程序代码。

**保存转换后的应用程序代码**

1. 展开目标数据库面板中**应用程序**下的 **C\$1** 节点。

1. 选择转换后的应用程序，然后选择**保存**。

1. 输入保存转换后的应用程序代码的文件夹路径，然后选择**选择文件夹**。

## 在中管理 C\$1 应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.Csharp.Manage"></a>

您可以添加多个 C\$1 应用程序转换项目、更新 AWS SCT 项目中的应用程序代码或从项目中删除 C\$1 转换 AWS SCT 项目。

**添加其他 C\$1 应用程序转换项目**

1. 展开左侧面板中的**应用程序**节点。

1. 选择 **C\$1** 节点，然后打开上下文 (右键单击)菜单。

1. 选择 **New application**（新建应用程序）。

1. 输入创建新的 C\$1 应用程序转换项目所需的信息。有关更多信息，请参阅 [创建 C\$1 应用程序转换项目](#CHAP_Converting.App.Csharp.Create)。

修改源应用程序代码后，将其上传到 AWS SCT 项目中。

**上传更新的应用程序代码**

1. 展开左侧面板中**应用程序**下的 **C\$1** 节点。

1. 选择要更新的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**刷新**，然后选择**是**。

   AWS SCT 从源文件上传您的应用程序代码并删除转换结果。要保留您在中进行的代码更改 AWS SCT 和转换结果，请创建一个新的 C\$1 转换项目。

**删除 C\$1 应用程序转换项目**

1. 展开左侧面板中**应用程序**下的 **C\$1** 节点。

1. 选择要删除的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**删除**，然后选择**确定**。

## 在中创建 C\$1 应用程序转换评估报告 AWS SCT
<a name="CHAP_Converting.App.Csharp.AssessmentReport"></a>

*C\$1 应用程序转换评估报告*提供了有关将 C\$1 应用程序中嵌入的 SQL 代码转换为与目标数据库兼容的格式的信息。评估报告提供了所有 SQL 执行点和所有源代码文件转换的详细信息。评估报告还包括针对 AWS SCT 无法转换的 SQL 代码的操作项目。

使用以下过程创建 C\$1 应用程序转换评估报告。

**创建 C\$1 应用程序转换评估报告**

1. 展开左侧面板中**应用程序**下的 **C\$1** 节点。

1. 选择要转换的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**转换**。

1. 在**视图**菜单上，选择**评估报告视图**。

1. 查看**摘要**选项卡。

   如下所示的**摘要**选项卡显示了 C\$1 应用程序评估报告中的执行摘要信息。它显示所有 SQL 执行点和所有源代码文件的转换结果。  
![\[“C# 应用程序评估报告摘要”选项卡\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/csharp-applications-summary.png)

1. 选择**将语句保存为 JSON**，将从 C\$1 应用程序中提取的 SQL 代码另存为 JSON 文件。

1. （可选）将报告的本地副本另存为 PDF 文件或逗号分隔值（CSV）文件。
   + 选择右上角的**保存为 PDF**，将报告另存为 PDF 文件。

      PDF 文件包含应用程序转换的执行摘要、操作项和建议。
   + 选择右上角的**保存为 CSV**，将报告另存为 CSV 文件。

     CSV 文件包含操作项、推荐的操作以及转换 SQL 代码所需的估计人工操作的复杂性。

# 使用 C\$1\$1 应用程序转换 SQL 代码 AWS Schema Conversion Tool
<a name="CHAP_Converting.App.Cplusplus"></a>

对于 Oracle 到 PostgreSQL 的转换， AWS SCT 您可以使用转换嵌入到 C\$1\$1 应用程序中的 SQL 代码。这个特定的 C\$1\$1 应用程序转换器了解应用程序逻辑。它收集位于不同应用程序对象中的语句，例如函数、参数、局部变量等。

由于这种深入的分析，C\$1\$1 应用程序 SQL 代码转换器比通用转换器的转换结果更好。

## 在中创建 C\$1\$1 应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.Cplusplus.Create"></a>

您可以仅创建 C\$1\$1 应用程序转换项目，以便将 Oracle 数据库架构转换为 PostgreSQL 数据库架构。请务必在项目中添加包含源 Oracle 架构和目标 PostgreSQL 数据库的映射规则。有关更多信息，请参阅 [在 AWS Schema Conversion Tool 中映射数据类型](CHAP_Mapping.md)。

您可以在单个 AWS SCT 项目中添加多个应用程序转换项目。

**创建 C\$1\$1 应用程序转换项目**

1. 创建数据库转换项目，然后添加源 Oracle 数据库。有关更多信息，请参阅[在中启动和管理项目 AWS SCT](CHAP_UserInterface.Project.md)和[将服务器添加到项目中 AWS SCT](CHAP_UserInterface.AddServers.md)。

1. 添加包含源 Oracle 数据库和目标 PostgreSQL 数据库的映射规则。您可以添加目标 PostgreSQL 数据库，也可以在映射规则中使用虚拟的 PostgreSQL 目标数据库平台。有关更多信息，请参阅[在 AWS Schema Conversion Tool 中映射数据类型](CHAP_Mapping.md)和[在 AWS Schema Conversion Tool 中映射到虚拟目标](CHAP_Mapping.VirtualTargets.md)。

1. 在**视图**菜单上，选择**主视图**。

1. 在**应用程序**菜单上，选择**新建 C\$1\$1 应用程序**。

   随即出现**创建 C\$1\$1 应用程序转换项目**对话框。  
![\[新 C++ 应用程序转换项目对话框\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/cplusplus-application-new-project.png)

1. 对于**名称**，输入 C\$1\$1 应用程序转换项目名称。每个数据库架构转换项目都可以有一个或多个子应用程序转换项目，因此如果您添加多个项目的话，请选择一个有意义的名称。

1. 对于**位置**，输入您的应用程序源代码的位置。

1. 在源树状图中，选择应用程序所用的架构。确保此架构是映射规则的一部分。 AWS SCT 以粗体突出显示作为映射规则一部分的架构。

1. 选择**确定**以创建 C\$1\$1 应用程序转换项目。

1. 在左侧面板的**应用程序**节点中找到您的 C\$1\$1 应用程序转换项目。

## 将你的 C\$1\$1 应用程序的 SQL 代码转换成 AWS SCT
<a name="CHAP_Converting.App.Cplusplus.Convert"></a>

将 C\$1\$1 应用程序添加到 AWS SCT 项目后，将此应用程序中的 SQL 代码转换为与目标数据库平台兼容的格式。按照以下过程在 AWS SCT中分析和转换 C\$1\$1 应用程序中嵌入的 SQL 代码。

**转换 SQL 代码**

1. 展开左侧面板中**应用程序**下的 **C\$1\$1** 节点，然后选择要转换的应用程序。

1. 在**源 Oracle 应用程序项目**中，选择**设置**。查看和编辑所选 C\$1\$1 应用程序的转换设置。您还可以为添加到 AWS SCT 项目中的所有 C\$1\$1 应用程序指定转换设置。有关更多信息，请参阅 [管理 C\$1\$1 应用程序转换项目](#CHAP_Converting.App.Cplusplus.Manage)。

1. 对于**编译器类型**，请选择用于 C\$1\$1 应用程序源代码的编译器。 AWS SCT **支持以下 C\$1\$1 编译器：**微软 Visual C\$1\$1**、**GCC、GNU 编译器集合**和 Clang。**默认选项是 **Microsoft Visual C\$1\$1**。

1. 对于**用户定义的宏**，请输入包含来自 C\$1\$1 项目的用户定义宏的文件路径。确保该文件具有以下结构：`#define name value`。在上述示例中，`value` 是可选参数。此可选参数的默认值为 `1`。

   要创建此文件，请在 Microsoft Visual Studio 中打开项目，然后选择**项目**、**属性**、**C/C\$1\$1** 和**预处理器**。对于**预处理器定义**，选择**编辑**，然后将名称和值复制到新的文本文件中。然后，为文件中的每个字符串添加以下前缀：`#define `。

1. 对于**外部包含目录**，请输入包含您在 C\$1\$1 项目中使用的外部库的文件夹的路径。

1. 在左窗格中，选择要转换的应用程序，然后打开上下文（右键单击）菜单。

1.  选择 “**转换**”。 AWS SCT 分析您的源代码文件，确定应用程序逻辑，并将代码元数据加载到项目中。此代码元数据包括 C\$1\$1 类、对象、方法、全局变量、接口等。

   在目标数据库面板中， AWS SCT 创建与源应用程序项目类似的文件夹结构。您可以在此查看转换后的应用程序代码，如下所示。  
![\[要分析的 SQL 代码\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/cplusplus-applications-project-analyze.png)

1. 保存转换后的应用程序代码。有关更多信息，请参阅 [保存转换后的应用程序代码](#CHAP_Converting.App.Cplusplus.Save)。

## 使用保存转换后的应用程序代码 AWS SCT
<a name="CHAP_Converting.App.Cplusplus.Save"></a>

使用以下过程保存转换后的应用程序代码。

**保存转换后的应用程序代码**

1. 展开目标数据库面板中**应用程序** 下的 **C\$1\$1** 节点。

1. 选择转换后的应用程序，然后选择**保存**。

1. 输入保存转换后的应用程序代码的文件夹路径，然后选择**选择文件夹**。

## 在中管理 C\$1\$1 应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.Cplusplus.Manage"></a>

您可以添加多个 C\$1\$1 应用程序转换项目、编辑转换设置、更新 C\$1\$1 应用程序代码或从项目中删除 C\$1\$1 转换 AWS SCT 项目。

**添加其他 C\$1\$1 应用程序转换项目**

1. 展开左侧面板中的**应用程序**节点。

1. 选择 **C\$1\$1** 节点，然后打开上下文（右键单击）菜单。

1. 选择 **New application**（新建应用程序）。

1. 输入创建新的 C\$1\$1 应用程序转换项目所需的信息。有关更多信息，请参阅 [创建 C\$1\$1 应用程序转换项目](#CHAP_Converting.App.Cplusplus.Create)。

您可以为项目中的所有 C\$1\$1 应用程序转换项目指定转换设置。 AWS SCT 

**编辑所有 C\$1\$1 应用程序的转换设置**

1. 在**设置**菜单上，选择**项目设置**，然后选择 **应用程序转换**。

1. 对于**编译器类型**，请选择用于 C\$1\$1 应用程序源代码的编译器。 AWS SCT **支持以下 C\$1\$1 编译器：**微软 Visual C\$1\$1**、**GCC、GNU 编译器集合**和 Clang。**默认选项是 **Microsoft Visual C\$1\$1**。

1. 对于**用户定义的宏**，请输入包含来自 C\$1\$1 项目的用户定义宏的文件路径。确保该文件具有以下结构：`#define name value`。在上述示例中，`value` 是可选参数。此可选参数的默认值为 `1`。

   要创建此文件，请在 Microsoft Visual Studio 中打开项目，然后选择**项目**、**属性**、**C/C\$1\$1** 和**预处理器**。对于**预处理器定义**，选择**编辑**，然后将名称和值复制到新的文本文件中。然后，为文件中的每个字符串添加以下前缀：`#define `。

1. 对于**外部包含目录**，请输入包含您在 C\$1\$1 项目中使用的外部库的文件夹的路径。

1. 选择**确定**以保存项目设置并关闭窗口。

或者，您可以为每个 C\$1\$1 应用程序转换项目指定转换设置。有关更多信息，请参阅 [转换 C\$1\$1 应用程序 SQL 代码](#CHAP_Converting.App.Cplusplus.Convert)。

修改源应用程序代码后，将其上传到 AWS SCT 项目中。

**上传更新的应用程序代码**

1. 展开左侧面板中**应用程序**下的 **C\$1\$1** 节点。

1. 选择要更新的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**刷新**，然后选择**是**。

   AWS SCT 从源文件上传您的应用程序代码并删除转换结果。要保留您在中进行的代码更改 AWS SCT 和转换结果，请创建一个新的 C\$1\$1 转换项目。

   此外，还 AWS SCT 会删除您为所选应用程序指定的应用程序转换设置。上传更新的应用程序代码后， AWS SCT 应用项目设置中的默认值。

**删除 C\$1\$1 应用程序转换项目**

1. 展开左侧面板中**应用程序**下的 **C\$1\$1** 节点。

1. 选择要删除的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**删除**，然后选择**确定**。

## 在中创建 C\$1\$1 应用程序转换评估报告 AWS SCT
<a name="CHAP_Converting.App.Cplusplus.AssessmentReport"></a>

*C\$1\$1 应用程序转换评估报告*提供了有关将 C\$1\$1 应用程序中嵌入的 SQL 代码转换为与目标数据库兼容的格式的信息。评估报告提供了所有 SQL 执行点和所有源代码文件转换的详细信息。评估报告还包括针对 AWS SCT 无法转换的 SQL 代码的操作项目。

**创建 C\$1\$1 应用程序转换评估报告**

1. 展开左侧面板中**应用程序**下的 **C\$1\$1** 节点。

1. 选择要转换的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**转换**。

1. 在**视图**菜单上，选择**评估报告视图**。

1. 查看**摘要**选项卡。

   **摘要**选项卡显示了 C\$1\$1 应用程序评估报告中的执行摘要信息。它显示所有 SQL 执行点和所有源代码文件的转换结果。

1. 选择**将语句保存为 JSON**，将从 Java 应用程序中提取的 SQL 代码另存为 JSON 文件。

1. （可选）将报告的本地副本另存为 PDF 文件或逗号分隔值（CSV）文件。
   + 选择右上角的**保存为 PDF**，将报告另存为 PDF 文件。

      PDF 文件包含应用程序转换的执行摘要、操作项和建议。
   + 选择右上角的**保存为 CSV**，将报告另存为 CSV 文件。

     CSV 文件包含操作项、推荐的操作以及转换 SQL 代码所需的估计人工操作的复杂性。

# 使用 Java 应用程序转换 SQL 代码 AWS Schema Conversion Tool
<a name="CHAP_Converting.App.Java"></a>

对于 Oracle 到 PostgreSQL 的转换， AWS Schema Conversion Tool 您可以使用转换嵌入到 Java 应用程序中的 SQL 代码。这个特定的 Java 应用程序转换器了解应用程序逻辑。它收集位于不同应用程序对象中的语句，例如函数、参数、局部变量等。

由于这种深入的分析，与通用转换器相比，Java 应用程序 SQL 代码转换器的转换结果更好。

如果您的 Java 应用程序使用该 MyBatis 框架与数据库交互，则可以使用转换嵌入 AWS SCT 到 XML 文件和注释中的 SQ MyBatis L 语句。要了解这些 SQL 语句的逻辑，请 AWS SCT 使用 MyBatis配置文件。 AWS SCT 可以在您的应用程序文件夹中自动发现此文件，也可以手动输入该文件的路径。

## 在中创建 Java 应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.Java.Create"></a>

您可以仅创建 Java 应用程序转换项目，以便将 Oracle 数据库架构转换为 PostgreSQL 数据库架构。请务必在项目中添加包含源 Oracle 架构和目标 PostgreSQL 数据库的映射规则。有关更多信息，请参阅 [在 AWS Schema Conversion Tool 中映射数据类型](CHAP_Mapping.md)。

您可以在单个项目中添加多个应用程序转换 AWS SCT 项目。使用以下过程创建 Java 应用程序转换项目。

**创建 Java 应用程序转换项目**

1. 创建数据库转换项目，然后添加源 Oracle 数据库。有关更多信息，请参阅[在中启动和管理项目 AWS SCT](CHAP_UserInterface.Project.md)和[将服务器添加到项目中 AWS SCT](CHAP_UserInterface.AddServers.md)。

1. 添加包含源 Oracle 数据库和目标 PostgreSQL 数据库的映射规则。您可以添加目标 PostgreSQL 数据库，也可以在映射规则中使用虚拟的 PostgreSQL 目标数据库平台。有关更多信息，请参阅[在 AWS Schema Conversion Tool 中映射数据类型](CHAP_Mapping.md)和[在 AWS Schema Conversion Tool 中映射到虚拟目标](CHAP_Mapping.VirtualTargets.md)。

1. 在**视图**菜单上，选择**主视图**。

1. 在**应用程序**菜单上，选择**新建 Java 应用程序**。

   随即出现**创建 Java 应用程序转换项目**对话框。  
![\[新 Java 应用程序转换项目对话框\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/java-application-new-project.png)

1. 对于**名称**，输入 Java 应用程序转换项目名称。每个数据库架构转换项目都可以有一个或多个子应用程序转换项目，因此如果您添加多个项目的话，请选择一个有意义的名称。

1. 对于**位置**，输入您的应用程序源代码的位置。

1. （可选）对于**MyBatis 配置文件**，请输入 MyBatis 配置文件的路径。 AWS SCT 扫描您的应用程序文件夹以自动发现此文件。如果此文件不在您的应用程序文件夹中，或者您使用了多个配置文件，请手动输入路径。

1. 在源树状图中，选择应用程序所用的架构。确保此架构是映射规则的一部分。 AWS SCT 以粗体突出显示作为映射规则一部分的架构。

1. 选择**确定**以创建 Java 应用程序转换项目。

1. 在左侧面板的**应用程序**节点中找到您的 Java 应用程序转换项目。

## 转换你的 Java 应用程序 SQL 代码 AWS SCT
<a name="CHAP_Converting.App.Java.Convert"></a>

将 Java 应用程序添加到 AWS SCT 项目后，将此应用程序中的 SQL 代码转换为与目标数据库平台兼容的格式。按照以下过程在 AWS Schema Conversion Tool中分析和转换嵌入 Java 应用程序的 SQL 代码。

**转换 SQL 代码**

1. 展开左侧面板中**应用程序**下的 **Java** 节点。

1. 选择要转换的应用程序，然后打开上下文（右键单击）菜单。

1.  选择 “**转换**”。 AWS SCT 分析您的源代码文件，确定应用程序逻辑，并将代码元数据加载到项目中。此代码元数据包括 Java 类、对象、方法、全局变量、接口等。

   在目标数据库面板中， AWS SCT 创建与源应用程序项目类似的文件夹结构。在这里，您可以查看转换后的应用程序代码。  
![\[要分析的 SQL 代码\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/java-applications-project-analyze.png)

1. 保存转换后的应用程序代码。有关更多信息，请参阅 [保存转换后的应用程序代码](#CHAP_Converting.App.Java.Save)。

您的 Java 应用程序可能包含与不同源数据库交互的 SQL 代码。您可以将其中几个源数据库迁移到 PostgreSQL。在这种情况下，请确保不要转换与已排除在迁移范围之外的数据库交互的 SQL 代码。您可以将 Java 应用程序的源文件排除在转换范围之外。为此，请清除要排除在转换范围之外的文件名的复选框。

更改转换范围后， AWS SCT 仍会分析 Java 应用程序的所有源文件的 SQL 代码。然后，将您排除在转换范围之外的所有源文件 AWS SCT 复制到目标文件夹。通过此操作，可以在保存转换后的应用程序文件后生成应用程序。

## 使用保存转换后的应用程序代码 AWS SCT
<a name="CHAP_Converting.App.Java.Save"></a>

使用以下过程保存转换后的应用程序代码。

**保存转换后的应用程序代码**

1. 展开目标数据库面板中**应用程序**下的 **Java** 节点。

1. 选择转换后的应用程序，然后选择**保存**。

1. 输入保存转换后的应用程序代码的文件夹路径，然后选择**选择文件夹**。

如果您的源 Java 应用程序使用该 MyBatis 框架，请确保更新配置文件以使用新数据库。

## 在中管理 Java 应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.Java.Manage"></a>

您可以添加多个 Java 应用程序转换项目、更新 AWS SCT 项目中的应用程序代码或从项目中删除 Java 转换 AWS SCT 项目。

**添加其他 Java 应用程序转换项目**

1. 展开左侧面板中的**应用程序**节点。

1. 选择 **Java** 节点，并打开上下文 (右键单击) 菜单。

1. 选择 **New application**（新建应用程序）。

1. 输入创建新的 Java 应用程序转换项目所需的信息。有关更多信息，请参阅 [创建 Java 应用程序转换项目](#CHAP_Converting.App.Java.Create)。

更改源应用程序代码后，将其上传到 AWS SCT 项目中。

**上传更新的应用程序代码**

1. 展开左侧面板中**应用程序**下的 **Java** 节点。

1. 选择要更新的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**刷新**，然后选择**是**。

   AWS SCT 从源文件上传您的应用程序代码并删除转换结果。要保留您在中进行的代码更改 AWS SCT 和转换结果，请创建一个新的 Java 转换项目。

如果您的源 Java 应用程序使用 MyBatis 框架，则 AWS SCT 使用 MyBatis 配置文件来解析您的 SQL 代码。更改此文件后，将其上传到 AWS SCT 项目中。

**编辑 MyBatis 配置文件的路径**

1. 展开左侧面板中**应用程序**下的 **Java** 节点。

1. 选择您的应用程序，然后选择**设置**。

1. 选择 “**浏览**”，然后选择 MyBatis配置文件。

1. 选择**应用**。

1. 在左侧面板中，选择应用程序，打开上下文（右键单击）菜单，然后选择**刷新**。

**删除 Java 应用程序转换项目**

1. 展开左侧面板中**应用程序**下的 **Java** 节点。

1. 选择要删除的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**删除**，然后选择**确定**。

## 在中创建 Java 应用程序转换评估报告 AWS SCT
<a name="CHAP_Converting.App.Java.AssessmentReport"></a>

*Java 应用程序转换评估报告*提供了有关将 Java 应用程序中嵌入的 SQL 代码转换为与目标数据库兼容的格式的信息。评估报告提供了所有 SQL 执行点和所有源代码文件转换的详细信息。评估报告还包括针对 AWS SCT 无法转换的 SQL 代码的操作项目。

使用以下过程创建 Java 应用程序转换评估报告。

**创建 Java 应用程序转换评估报告**

1. 展开左侧面板中**应用程序**下的 **Java** 节点。

1. 选择要转换的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**转换**。

1. 在**视图**菜单上，选择**评估报告视图**。

1. 查看 **Summary** 选项卡。

   如下所示的**摘要**选项卡显示了 Java 应用程序评估报告中的执行摘要信息。它显示所有 SQL 执行点和所有源代码文件的转换结果。  
![\[“Java 应用程序评估报告摘要”选项卡\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/java-applications-summary.png)

1. 选择**将语句保存为 JSON**，将从 Java 应用程序中提取的 SQL 代码另存为 JSON 文件。

1. （可选）将报告的本地副本另存为 PDF 文件或逗号分隔值（CSV）文件。
   + 选择右上角的**保存为 PDF**，将报告另存为 PDF 文件。

      PDF 文件包含应用程序转换的执行摘要、操作项和建议。
   + 选择右上角的**保存为 CSV**，将报告另存为 CSV 文件。

     CSV 文件包含操作项、推荐的操作以及转换 SQL 代码所需的估计人工操作的复杂性。

# 使用 Pro\$1C 应用程序转换 SQL 代码 AWS Schema Conversion Tool
<a name="CHAP_Converting.App.ProC"></a>

要将 Oracle 转换为 PostgreSQL，可以使用 AWS Schema Conversion Tool AWS SCT() 转换嵌入到 Pro\$1C 应用程序中的 SQL 代码。这个特定的 Pro\$1C 应用程序转换器了解应用程序逻辑。它收集位于不同应用程序对象中的语句，例如函数、参数、局部变量等。

由于这种深入的分析，与通用转换器相比，Pro\$1C 应用程序 SQL 代码转换器的转换结果更好。

## 在中创建 Pro\$1C 应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.ProC.Create"></a>

您可以仅创建 Pro\$1C 应用程序转换项目，以便将 Oracle 数据库架构转换为 PostgreSQL 数据库架构。请务必在项目中添加包含源 Oracle 架构和目标 PostgreSQL 数据库的映射规则。有关更多信息，请参阅 [在 AWS Schema Conversion Tool 中映射数据类型](CHAP_Mapping.md)。

您可以在单个项目中添加多个应用程序转换 AWS SCT 项目。使用以下过程创建 Pro\$1C 应用程序转换项目。

**创建 Pro\$1C 应用程序转换项目**

1. 创建数据库转换项目，然后添加源 Oracle 数据库。有关更多信息，请参阅[在中启动和管理项目 AWS SCT](CHAP_UserInterface.Project.md)和[将服务器添加到项目中 AWS SCT](CHAP_UserInterface.AddServers.md)。

1. 添加包含源 Oracle 数据库和目标 PostgreSQL 数据库的映射规则。您可以添加目标 PostgreSQL 数据库，也可以在映射规则中使用虚拟的 PostgreSQL 目标数据库平台。有关更多信息，请参阅[在 AWS Schema Conversion Tool 中映射数据类型](CHAP_Mapping.md)和[在 AWS Schema Conversion Tool 中映射到虚拟目标](CHAP_Mapping.VirtualTargets.md)。

1. 在**视图**菜单上，选择**主视图**。

1. 在**应用程序**菜单上，选择**新建 Pro\$1C 应用程序**。

   随即出现**创建 Pro\$1C 应用程序转换项目**对话框。  
![\[“新 Pro*C 应用程序转换项目”对话框\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/proc-application-new-project.png)

1. 对于**名称**，输入 Pro\$1C 应用程序转换项目名称。每个数据库架构转换项目都可以有一个或多个子应用程序转换项目，因此如果您添加多个项目的话，请选择一个有意义的名称。

1. 对于**位置**，输入您的应用程序源代码的位置。

1. 在源树状图中，选择应用程序所用的架构。确保此架构是映射规则的一部分。 AWS SCT 以粗体突出显示作为映射规则一部分的架构。

1. 选择**确认**以创建 Pro\$1C 应用程序转换项目。

1. 在左侧面板的**应用程序** 节点中找到您的 Pro\$1C 应用程序转换项目。

## 将你的 Pro\$1C 应用程序 SQL 代码转换成 AWS SCT
<a name="CHAP_Converting.App.ProC.Convert"></a>

将 Pro\$1C 应用程序添加到 AWS SCT 项目后，将该应用程序中的 SQL 代码转换为与目标数据库平台兼容的格式。按照以下过程在 AWS Schema Conversion Tool中分析和转换中嵌入 Pro\$1C 应用程序中的 SQL 代码。

**转换 SQL 代码**

1. 展开左侧面板中**应用程序**下的 **Pro\$1C** 节点。

1. 选择要转换的应用程序，然后选择**设置**。

   1. 在**全局标头文件路径**中，输入应用程序项目使用的标头文件路径。

   1. 选择**将所有未解析的主机变量解释为**，以查看转换后的代码中所有未解析的变量。

   1. 选择**使用扩展包中的固定宽度的字符串转换函数**，以便在转换后的 SQL 代码中使用扩展包函数。 AWS SCT 在应用程序项目中包含扩展包文件。

   1. 选择**将匿名 PL/SQL 块转换为独立的 SQL 调用或存储函数**，在目标数据库中为所有匿名 PL/SQL 块创建存储过程。 AWS SCT 然后将这些存储过程的运行包括在转换后的应用程序代码中。

   1. 选择**使用自定义游标流**可改进 Oracle 数据库游标的转换。

1. 在左侧面板中，选择要转换的应用程序，然后打开上下文（右键单击）菜单。

1.  选择 “**转换**”。 AWS SCT 分析您的源代码文件，确定应用程序逻辑，并将代码元数据加载到项目中。此代码元数据包括 Pro\$1C 类、对象、方法、全局变量、接口等。

   在目标数据库面板中， AWS SCT 创建与源应用程序项目类似的文件夹结构。在这里，您可以查看转换后的应用程序代码。  
![\[要分析的 SQL 代码\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/proc-applications-project-analyze.png)

1. 保存转换后的应用程序代码。有关更多信息，请参阅 [编辑和保存转换后的 SQL 代码](#CHAP_Converting.App.ProC.Save)。

## 使用编辑和保存转换后的应用程序代码 AWS SCT
<a name="CHAP_Converting.App.ProC.Save"></a>

您可以编辑转换后的 SQL 语句，并使用将编辑后的代码嵌入 AWS SCT 到转换后的 Pro\$1C 应用程序代码中。您可使用以下过程编辑转换后的 SQL 代码。

**编辑转换后的 SQL 代码**

1. 展开左侧面板中**应用程序**下的 **Pro\$1C** 节点。

1. 选择要转换的应用程序，打开上下文（右键单击）菜单，然后选择**转换**。

1. 在**视图**菜单上，选择**评估报告视图**。

1. 选择**将语句保存为 CSV**，将从 Pro\$1C 应用程序中提取的 SQL 代码保存为 CSV 文件。

1. 输入 CSV 文件的名称以保存提取的 SQL 代码，然后选择**保存**。

1. 编辑提取的 SQL 代码。

1. 在**视图**菜单上，选择**主视图**。

1. 展开目标数据库面板中**应用程序**下的 **Pro\$1C** 节点。

1. 选择转换后的应用程序，打开上下文（右键单击）菜单，然后选择**从 CSV 导入语句**。

1. 选择**是**，然后选择包含已编辑的 SQL 代码的文件，然后选择**打开**。

AWS SCT 将转换后的 SQL 语句分成多个部分，然后将其放入源应用程序代码的相应对象中。使用以下过程保存转换后的应用程序代码。

**保存转换后的应用程序代码**

1. 展开目标数据库面板中**应用程序**下的 **Pro\$1C** 节点。

1. 选择转换后的应用程序，然后选择**保存**。

1. 输入保存转换后的应用程序代码的文件夹路径，然后选择**选择文件夹**。

## 在中管理 Pro\$1C 应用程序转换项目 AWS SCT
<a name="CHAP_Converting.App.ProC.Manage"></a>

您可以添加多个 Pro\$1C 应用程序转换项目、更新项目中的应用程序代码或从 AWS SCT 项目中移除 Pro\$1C 转换项目。 AWS SCT 

**添加其他 Pro\$1C 应用程序转换项目**

1. 展开左侧面板中的**应用程序**节点。

1. 选择 **Pro\$1C** 节点，然后打开上下文（右键单击）菜单。

1. 选择 **New application**（新建应用程序）。

1. 输入创建新的 Pro\$1C 应用程序转换项目所需的信息。有关更多信息，请参阅 [创建 Pro\$1C 应用程序转换项目](#CHAP_Converting.App.ProC.Create)。

修改源应用程序代码后，将其上传到 AWS SCT 项目中。

**上传更新的应用程序代码**

1. 展开左侧面板中**应用程序**下的 **Pro\$1C** 节点。

1. 选择要更新的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**刷新**，然后选择**是**。

   AWS SCT 从源文件上传您的应用程序代码并删除转换结果。要保留您在中进行的代码更改 AWS SCT 和转换结果，请创建一个新的 Pro\$1C 转换项目。

**移除 Pro\$1C 应用程序转换项目**

1. 展开左侧面板中**应用程序**下的 **Pro\$1C** 节点。

1. 选择要删除的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**删除**，然后选择**确定**。

## 在中创建 Pro\$1C 应用程序转换评估报告 AWS SCT
<a name="CHAP_Converting.App.ProC.AssessmentReport"></a>

*Pro\$1C 应用程序转换评估报告*提供了有关将 Pro\$1C 应用程序中嵌入的 SQL 代码转换为与目标数据库兼容的格式的信息。评估报告提供了所有 SQL 执行点和所有源代码文件转换的详细信息。评估报告还包括针对 AWS SCT 无法转换的 SQL 代码的操作项目。

使用以下过程创建 Pro\$1C 应用程序转换评估报告。

**创建 Pro\$1C 应用程序转换评估报告**

1. 展开左侧面板中**应用程序**下的 **Pro\$1C** 节点。

1. 选择要转换的应用程序，然后打开上下文（右键单击）菜单。

1. 选择**转换**。

1. 在**视图**菜单上，选择**评估报告视图**。

1. 查看 **Summary** 选项卡。

   如下所示的**摘要**选项卡显示了 Pro\$1C 应用程序评估报告中的执行摘要信息。它显示所有 SQL 执行点和所有源代码文件的转换结果。  
![\[“Pro*C 应用程序评估报告摘要”选项卡\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/images/proc-applications-summary.png)

1. 选择**将语句保存到 CSV**，将从 Pro\$1C 应用程序中提取的 SQL 代码保存为逗号分隔值（CSV）文件。

1. （可选）将报告的本地副本另存为 PDF 文件或逗号分隔值（CSV）文件。
   + 选择右上角的**保存为 PDF**，将报告另存为 PDF 文件。

      PDF 文件包含应用程序转换的执行摘要、操作项和建议。
   + 选择右上角的**保存为 CSV**，将报告另存为 CSV 文件。

     CSV 文件包含操作项、推荐的操作以及转换 SQL 代码所需的估计人工操作的复杂性。