使用 AWS Schema Conversion Tool 转换 C# 应用程序中的 SQL 代码
对于 Oracle 到 PostgreSQL 的转换,可以使用 AWS Schema Conversion Tool (AWS SCT)转换嵌入到 C# 应用程序中的 SQL 代码。这个特定的 C# 应用程序转换器了解应用程序逻辑。它收集位于不同应用程序对象中的语句,例如函数、参数、局部变量等。
由于这种深入的分析,C# 应用程序 SQL 代码转换器比通用转换器的转换结果更好。
在 AWS SCT 中创建 C# 应用程序转换项目
您可以仅创建 C# 应用程序转换项目,以便将 Oracle 数据库架构转换为 PostgreSQL 数据库架构。请务必在项目中添加包含源 Oracle 架构和目标 PostgreSQL 数据库的映射规则。有关更多信息,请参阅 在 AWS Schema Conversion Tool 中映射数据类型。
您可以在单个 AWS SCT 项目中添加多个应用程序转换项目。使用以下过程创建 C# 应用程序转换项目。
创建 C# 应用程序转换项目
-
创建数据库转换项目,然后添加源 Oracle 数据库。有关更多信息,请参阅在 AWS SCT 中启动和管理项目和在 AWS SCT 中将服务器添加到项目。
-
添加包含源 Oracle 数据库和目标 PostgreSQL 数据库的映射规则。您可以添加目标 PostgreSQL 数据库,也可以在映射规则中使用虚拟的 PostgreSQL 目标数据库平台。有关更多信息,请参阅在 AWS Schema Conversion Tool 中映射数据类型和在 AWS Schema Conversion Tool 中映射到虚拟目标。
-
在视图菜单上,选择主视图。
-
在应用程序菜单上选择新建 C# 应用程序。
随即出现创建 C# 应用程序转换项目对话框。
-
对于名称,输入 C# 应用程序转换项目名称。每个数据库架构转换项目都可以有一个或多个子应用程序转换项目,因此如果您添加多个项目的话,请选择一个有意义的名称。
-
对于位置,输入您的应用程序源代码的位置。
-
在源树状图中,选择应用程序所用的架构。确保此架构是映射规则的一部分。AWS SCT 以粗体突出显示作为映射规则一部分的架构。
-
选择确定以创建 C# 应用程序转换项目。
-
在左侧面板的应用程序节点中找到您的 C# 应用程序转换项目。
在 AWS SCT 中转换 C# 应用程序 SQL 代码
将 C# 应用程序添加到 AWS SCT 项目后,将此应用程序中的 SQL 代码转换为与目标数据库平台兼容的格式。按照以下过程在 AWS Schema Conversion Tool 中分析和转换嵌入 C# 应用程序的 SQL 代码。
转换 SQL 代码
展开左侧面板中应用程序下的 C# 节点。
选择要转换的应用程序,然后打开上下文(右键单击)菜单。
-
选择转换。AWS SCT 分析源代码文件,确定应用程序逻辑,并将代码元数据加载到项目中。此代码元数据包括 C# 类、对象、方法、全局变量、接口等。
在目标数据库面板中,AWS SCT 创建与源应用程序项目相似的文件夹结构。在这里,您可以查看转换后的应用程序代码。
-
保存转换后的应用程序代码。有关更多信息,请参阅 保存转换后的应用程序代码。
您的 C# 应用程序可能包含与不同源数据库交互的 SQL 代码。您可以将其中几个源数据库迁移到 PostgreSQL。在这种情况下,请确保不要转换与已排除在迁移范围之外的数据库交互的 SQL 代码。您可以将 C# 应用程序的源文件排除在转换范围之外。为此,请清除要排除在转换范围之外的文件名的复选框。
更改转换范围后,AWS SCT 仍会分析 C# 应用程序的所有源文件的 SQL 代码。然后,AWS SCT 将您排除在转换范围之外的所有源文件复制到目标文件夹。通过此操作,可以在保存转换后的应用程序文件后生成应用程序。
使用 AWS SCT 保存转换后的应用程序代码
使用以下过程保存转换后的应用程序代码。
保存转换后的应用程序代码
-
展开目标数据库面板中应用程序下的 C# 节点。
-
选择转换后的应用程序,然后选择保存。
-
输入保存转换后的应用程序代码的文件夹路径,然后选择选择文件夹。
在 AWS SCT 中管理 C# 应用程序转换项目
您可以添加多个 C# 应用程序转换项目、更新 AWS SCT 项目中的应用程序代码或从 AWS SCT 项目中删除 C# 转换项目。
添加其他 C# 应用程序转换项目
展开左侧面板中的应用程序节点。
选择 C# 节点,然后打开上下文 (右键单击)菜单。
选择 New application(新建应用程序)。
输入创建新的 C# 应用程序转换项目所需的信息。有关更多信息,请参阅 创建 C# 应用程序转换项目。
更改源应用程序代码后,将其上传到 AWS SCT 项目中。
上传更新的应用程序代码
展开左侧面板中应用程序下的 C# 节点。
选择要更新的应用程序,然后打开上下文(右键单击)菜单。
选择刷新,然后选择是。
AWS SCT 从源文件上传您的应用程序代码并删除转换结果。要保留您在 AWS SCT 中进行的代码更改和转换结果,请创建一个新的 C# 转换项目。
删除 C# 应用程序转换项目
展开左侧面板中应用程序下的 C# 节点。
选择要删除的应用程序,然后打开上下文(右键单击)菜单。
选择删除,然后选择确定。
在 AWS SCT 中创建 C# 应用程序转换评估报告
C# 应用程序转换评估报告提供了有关将 C# 应用程序中嵌入的 SQL 代码转换为与目标数据库兼容的格式的信息。评估报告提供了所有 SQL 执行点和所有源代码文件转换的详细信息。评估报告还包括针对 AWS SCT 无法转换的 SQL 代码的操作项。
使用以下过程创建 C# 应用程序转换评估报告。
创建 C# 应用程序转换评估报告
展开左侧面板中应用程序下的 C# 节点。
选择要转换的应用程序,然后打开上下文(右键单击)菜单。
选择转换。
在视图菜单上,选择评估报告视图。
-
查看摘要选项卡。
如下所示的摘要选项卡显示了 C# 应用程序评估报告中的执行摘要信息。它显示所有 SQL 执行点和所有源代码文件的转换结果。
选择将语句保存为 JSON,将从 C# 应用程序中提取的 SQL 代码另存为 JSON 文件。
-
(可选)将报告的本地副本另存为 PDF 文件或逗号分隔值(CSV)文件。
-
选择右上角的保存为 PDF,将报告另存为 PDF 文件。
PDF 文件包含应用程序转换的执行摘要、操作项和建议。
-
选择右上角的保存为 CSV,将报告另存为 CSV 文件。
CSV 文件包含操作项、推荐的操作以及转换 SQL 代码所需的估计人工操作的复杂性。
-